飞扬围棋

标题: 懂编程的都进来看一下 [打印本页]

作者: daigo    时间: 2008-11-17 14:07
标题: 懂编程的都进来看一下
大家都记得原来论坛可以上传SGF并在线打谱的吧?自从论坛升级到Discuz!6以后,这个功能就没了。
昨天传了个在线打谱的JavaApplet并和阿扬谈了下,发现目前的困难在于没有现成的插件可调用。

我下载了Discuz!6大概瞧了瞧,不过不懂PHP,看不太明白。只有一点点想法:
1、在post.func.php文件里定义了attach_upload函数。其中static $safeext  = array('jpg', 'jpeg', 'gif', 'png', 'swf', 'bmp', 'txt', 'zip', 'rar', 'doc', 'mp3')和static $imgext  = array('jpg', 'jpeg', 'gif', 'png', 'bmp')两句分别定义了能上传的文件类型和图像文件类型。接下来,if(in_array($attach['ext'], $imgext))这句判断上传的文件是不是图像。
2、我们知道,如果上传的是图像文件,就会在动态生成的页面中直接显示出来。暂时没找到是调用了哪个文件里的哪个函数或过程。有人知道吗?
3、是不是可以参照这个,添上static $sgfext = array('sgf','mgt')和if(in_array($attach['ext'], $sgfext)),然后再通过自定义函数调用JavaApplet并以param name传递参数?

我记得论坛里有不少编程高手,有人能实现吗?
作者: Fish    时间: 2008-11-17 14:39
晚上我回去翻翻看。对ASP和PHP不怎么懂,只知道一些原理。

基本上的原理在于接收了上传文件后,以后要处理这类文件附件时,
在服务器端生成特定的 HTML 语句,并返回给浏览器。

以前也是棋友提出的方法,在论坛版本升级之后,代码变化较大,要修改语句,反复测试才通过
这次换了个语言,估计也得花点时间分析一下。主要还是不熟
作者: 碁石    时间: 2008-11-17 15:12
其实你只需要用户sgf字符串,就传上传url等,并不需要上传什么文件,然后以此做的参数,来调用javaapplet就可以实现
作者: Fish    时间: 2008-11-17 15:22
一般的论坛,是不允许用户贴 <Script> 这样的脚本语句的
当然,如果让贴的话,用户也得有一个模板,然后把上传的 sgf 的 URL 填进去

通常,显示 applet  的相关脚本和 html 部分都是后台生成的
作者: daigo    时间: 2008-11-17 15:39
翻了下资料,是ywqz的帖子。里面是针对ASP的。机子上没装IIS,找了个免费空间,准备试验一下:)
作者: daigo    时间: 2008-11-17 18:06
找到关键位置了!在include目录下的discuzcode.func.php里,第96行开始有个discuzcode函数,里面定义了对超链接、email、swf、图片等的不同处理方式。看上去用上了正则表达式,正在解读中……
作者: 阿扬    时间: 2008-11-17 18:53
daigo,你到dZ的官方论坛有个关于这个SGF的插件,但是我修改了,没有用 。你可以先去看看那个
作者: daigo    时间: 2008-11-17 20:34
原帖由 阿扬 于 2008-11-17 18:53 发表
daigo,你到dZ的官方论坛有个关于这个SGF的插件,但是我修改了,没有用 。你可以先去看看那个

没找到,给个地址或发附件。
作者: Fish    时间: 2008-11-17 21:31
http://www.discuz.net/viewthread ... p;extra=&page=1

阿扬说的地址是这个,其中对应于飞扬论坛的6.0版的修改补充在30楼
作者: Fish    时间: 2008-11-17 21:55
刚才改了一下,准备使用飞扬以前的那个打谱软件,结果失败了,先恢复原状,等再测试测试
作者: daigo    时间: 2008-11-17 21:57
汗,那个俄罗斯的FlashGoban是flash做的,调用方法和javaapplet差别很大吧。我有空看看。
作者: Fish    时间: 2008-11-17 22:00
标题: 好像可以啦!

作者: Fish    时间: 2008-11-17 22:03
看来是可以了。

刚才看代码,似乎有些头绪了。
如果这个打谱软件大家觉得不漂亮的话,考虑尝试转成其他形式的
感觉 TOM 的经过改进之后,功能比以前好了不少,回头试试看能否用 TOM 的
作者: Fish    时间: 2008-11-17 22:30
作为补充测试,擅自把 daigo 的帖子改了若干,都加上棋谱显示了

http://www.flygo.net/bbs/thread-25297-1-1.html
作者: daigo    时间: 2008-11-18 00:19
to fish:
很好很好,就是感觉CPU占用有点高,多开几个页面有点顿。先用着吧。要漂亮的话可以考虑英国围棋协会用的那个。
把最新的0.984传给你,更新一下。
以前那个打谱软件,还有http://www.flygo.net/bbs/thread-25428-1-1.html里这个都是JavaApplet的,调用方法肯定和flash有点区别。慢慢研究。

[ 本帖最后由 daigo 于 2008-11-18 00:21 编辑 ]
作者: reico    时间: 2008-11-18 10:36
报告: 宽屏显示有点扁。浏览器:Opera.

使用Opera宽度适配功能后,显示正常。

[ 本帖最后由 reico 于 2008-11-18 10:37 编辑 ]
作者: daigo    时间: 2008-11-18 16:58
看看这个:
http://daigo.freehostia.com/bbs6 ... id=4&extra=page%3D1
test:test

例局是天文家春海大师报着“执黑天元第一必胜”的信念在御城棋上与道策名人交手的记录。

[ 本帖最后由 daigo 于 2008-11-18 17:02 编辑 ]
作者: daigo    时间: 2008-11-18 17:05
flash已搞定。下个目标是JavaApplet,再下是JavaScript。
棋人棋事网就是用的JavaScript。




欢迎光临 飞扬围棋 (http://flygo.net/Bbs/) Powered by Discuz! X3.2