discuz图片顺序混乱解决方案

yipeiwu_com6年前PHP代码库

说明

discuz在发表帖子的时候,添加多张图片,然后直接发表帖子,图片顺序有时候会乱掉
即使上传图片窗口中图片顺序正确,发布之后还是会乱掉

分析

看url,程序代码中看不出什么
将图片名改为序号上传,顺序乱了,记下帖子中乱掉的图片顺序为:76123458
然后在数据库找到bbs_forum_attachment_1表,发现默认的顺序也为此:

竟然也不按aid排序,有可能取的时候就直接取了没有order by
找到直接操作此表的php:source\class\table\table_forum_attachment_n.php
通过writelog('文件名','log')方法,发现,每刷新一次帖子,fetch_all_by_id,此方法就执行一次
原来查看帖子的时候,没有插入到帖子中的附件地址是每次都要从数据库读的

解决

修改fetch_all_by_id方法的传入默认参数:order_by='aid'

刷新刚才图片顺序乱掉的帖子,发现顺序正常了

以上就是关于discuz的修改的全部内容了,希望对大家能够有所帮助。

相关文章

php 生成文字png图片的代码

复制代码 代码如下: <? /* php生成文字png图片,可以使用如下方式调用函数: http://www.yourdomian.com/text_png.php3?msg=he...

PHP版网站缓存加快打开速度的方法分享

PHP版网站缓存加快打开速度的方法分享

说明: 1,在服务器缓存了压缩过的文件,再次访问减少再压缩时间,降低CPU占用率。 2,通过设置客户端文件缓存时间,降低再次请求次数,可降低85%以上。 3,图片因为已经是压缩格式,只是...

探讨PHP调用时间格式的参数详解

1、调用语法使用函式date() 实现获取当前的时间格式,例如: 2、时间格式参数设定上面语法中”Y-m-d H:i:s”,显示的格式为: 年-月-日 小时:分钟:秒这样看来,我们只要获...

phpExcel导出大量数据出现内存溢出错误的解决方法

phpExcel将读取的单元格信息保存在内存中,我们可以通过 复制代码 代码如下: PHPExcel_Settings::setCacheStorageMethod() 来设置不同的缓存...

php+js实现的无刷新下载文件功能示例

本文实例讲述了php+js实现的无刷新下载文件功能。分享给大家供大家参考,具体如下: 服务器端页面 步骤就是,设置头文件参数,然后读入并输出文件。下面代码的file_get_conten...