首页 > 文章 > 杂文

phpcms前台投稿乱码、图片上传大小限制、推送排序的解决方
时间:2014-06-09 18:32:47  点击: 来源:  作者:

phpcms v9 通过测试,理论上9.x前期版本及后期未修复该问题的版本皆可用。

一、前台投稿乱码不知官方怎么测试的,发布的版本每次都是漏洞百出,这次更新后又引来骂声一片,其中就有前台投稿乱码。调试发现,是 ...

       phpcms v9 通过测试,理论上9.x前期版本及后期未修复该问题的版本皆可用。


一、前台投稿乱码
不知官方怎么测试的,发布的版本每次都是漏洞百出,这次更新后又引来骂声一片,其中就有前台投稿乱码。
调试发现,是前台投稿过滤html字符造成,只改一句代码即可。

modules/member/content.php
line 52:
if(in_array($_k, $fields)) $info[$_k] = $_v;   //这里是备注  20130509
二、图片上传大小限制
脑残的缺陷一直没解决,可以限制上传附件的大小,可直接上传的图片就不限制,难道是免费版官方故意留下的问题?
解决代码:

(一)libs/classes/attachment.class.php
line 49:
//$this->maxsize = $maxsize;   //这里是备注  20140609
if(empty($maxsize) || $maxsize == 0) {
$site_setting = $this->_get_site_setting($this->siteid);
$this->maxsize = $site_setting['upload_maxsize']*1024;
}
//edited over
line 381:
return iconv(CHARSET,"gbk",$UPLOAD_ERROR[$this->error]); //edited by lsyer 20130509
(二)modules/attachment/attachment.php
line 43:
//added by lsyer 20130509
else
{
echo($attachment->error());
}
//over 
三、推送排序
很恼火的一个问题,出现在不同内容模型同时向头条推荐等推送时发生,默认的listorder是各自模型内部内容id,但模型又是分表存储,造成多模型推送不能全部按发布时间排序,模型内容多的推送一直占据最前列,也会造成部分不同模型的栏目推送失败的错觉。虽然可以将推送的推荐、头条之类手动再次排序,终究比较麻烦。为此纠结了好久,下了几次决心,前天终于决定把它搞定,找到一种最简单的方法。
解决方法:
 module/admin/classes/push_api.class.php
line 136:

  //$info['id] = $info['listorder'] = $d['id'];  
  $info['id] = $d['id']; //edited by lsyer 20130505  
而后,修改数据表v9_position_data的结构,将listorder字段默认值删掉,设置为自增即可。

从phpcms存在的诸多问题中可以得出几个教训:一是发布产品、决定计划前一定要十分注意测试和推证,二是产品更新、代码修改、文章修订前一定要做好前至少两到三次的备份,三是世上没有什么救世主还是要自己想办法解决问题。
”您可通过以下微信二维码,赞赏作者“
 
 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
linux服务器同步互联网时间
linux服务器同步互联
亚马逊云lightsail服务器使用教程 | 亚马逊云lightsail使用指南
亚马逊云lightsail服
hostdare 4折优惠,直接降价60% 美国洛杉矶低至 $10.4/年 768M内存/1核/10gNVMe/500g流量
hostdare 4折优惠,直接
六类网线cat6a和cat6e的区别
六类网线cat6a和cat6e
相关文章
栏目更新
栏目热门

关于我们 | 广告服务 | 联系我们 | 网站地图 | 免责声明 | WAP | RSS


Copyright © 运维之家 2013-2023