[成功解决]Sablog2.0后台发表文章不自动保存的bug

该日志由 samool 发表于 2008-07-02 11:20 AM

起因:昨天晚上辛辛苦苦写了一大篇关于Pagerank的东东,结果电脑突然蓝屏(6年前的本本,想下课了,NND),重启电脑后发面我的文章已经消失,只剩下短短的一句标题“成功将Pagerank查询程序迁移到linux下”,郁闷,相当地郁闷啊18

昨天在SA论坛上看到有位兄弟也是一个捣鼓能手,把Sa2.0装上后,还做了很漂亮的风格,修改了好几处BUG,于是在他博客上留言,希望能解决这个问题。与此同时,我这边也在开工了,经过我详细的分析,文章自动保存调用了include\jscript\autosave.js 这个文件,不要小瞧这几段JS,他可以自动缓存文章内容功臣,该JS获取FCK里的内容,并把文章标题,文章内容以及文章描述通过ajax提交到cp.php,接着当cp.php收到POST后,调用include\func\cache.func.php的autosave_recache函数将内容存到cache/cache_autosave.php文件里,下次进入添加文章页时,自动从cache/cache_autosave.php页获取缓存内容,从而实现发表文章时,文章内容自动保存起来了,免的因为各种原因把文章弄丢了。

经过我分析后,发现标题内容可以保存起来,文章内容和描述始终不能保存,但是我手动保存内容后,检查cache/cache_autosave.php这个文件,标题、内容和描述都保存起来了的,但是为何不能正常显示呢,难道是fck的问题,仔细对SA1.6的fck调用文件后发现一切正常,这时就出现了一个问题,同样地调用fck内容,如果是调用代码的问题,那么修改文章时就不会显示内容的,这时问题就豁然开朗了,肯定出在进入添加文章页的代码上,仔细检查发现admin\article.php有一个Sa2.0致命错误(红色部分),代码如下:
  $act = 'addarticle';
  $tdtitle = '添加日志';
  $article['description'] = $article['content'] = '';
  $article['closecomment'] = isset($_COOKIE['closecomment']) ? intval($_COOKIE['closecomment']) : '0';

为何每次添加日志的时候都要把描述和内容清空呢? 清空了那自动保存还有什么用,哈哈哈,把这行(红色部分)删除或注释掉,搞定。

最后总结一下:如何解决Sa2.0后台文章不能自动保存的BUG?
打开admin\article.php 这个文件,找到$article['description'] = $article['content'] = '';
删除该代码,或者将代码替换为 //$article['description'] = $article['content'] = '';

这样修改一下就可以实现文章自动保存了,罗嗦了这么多,我只想说明一点,出现问题时,顺藤摸瓜,多思考,不管什么问题,我们都有能力解决的,谢谢大家!!

 傻猫网络日志标签:    sablog2, bug tiffany jewelry
网摘: Yahoo Baidu Google Bolaa 365Key Yesky Wozhai POCO ViVi YouNote Hexun Del.icio.us Yeeyoo igooi I2Key Cn3 Bytemen Furl Blinklist Blogmarks Technorati 分享到饭否
相关文章: (最多只显示10条记)
cnbeta山寨版博客完成!! (浏览:404, 评论:6)
Sablog2.0蓝风风格下载 (浏览:9575, 评论:13)
同花顺风格下载 For Sablog2.0 (浏览:9189, 评论:3)
Sax2.0-20080806注入漏洞解决方案 (浏览:6591, 评论:1)
换个新主题,换种心情 (浏览:6573, 评论:6)
偶移植的第一款Sablog-x 2.0风格 (浏览:7704, 评论:7)
如何将Sablog-x 1.6升级到Sablog-x 2.0 (浏览:8885, 评论:12)
BackLinks的安装方法 For Sablog2.0 (浏览:5327, 评论:8)
终于解决了困扰我很久的问题 (浏览:2575, 评论:3)
» 我要发表评论 你的参与是我最大的动力!    访客评论: (9条记录)
  1. 1 samool :
    2008-07-02 11:31 AM   引用此文发表评论
    沙发自己坐到起....下面的同学排好队...
  2. 2 wilson :
    2008-07-02 11:38 AM   引用此文发表评论
    我喜欢席地而坐!坐地板咯!
    2.0还是等你们先用的人修正Bug后,我在升级,哈哈!到时候打算从零开始!
  3. 3 HJin :
    2008-07-02 12:19 PM   引用此文发表评论
    被你抢先了!我哭啊!
    昨天我也研究了好久的代码,所有过程都和你一样,也对比了1.6的程序。整个过程都弄懂了,可是……
    最后思路僵化了,就一直停留在检查js脚本上面,所以没有想到去看article.php
  4. 4 HJin :
    2008-07-02 12:23 PM   引用此文发表评论
    测试成功!你好棒啊!居然没有想到是PHP的错误!……
  5. 5 HJin :
    2008-07-02 12:32 PM   引用此文发表评论
    还有,这篇文章我转载走了哦!作为技术文章,自己记住。
Total:912Next ›
 
发表评论:( 注意:为了防止广告评论,本站链接已经启用nofollow)

    

(单击图片换张图片)