织梦DEDECMS5.7网站模板会员中心错误的修改方法
织梦DedeCMS5.7网站模板会员中心错误的修改方法:
这里要说到的错误总共有两个,如下所示:
第一个:在会员中心发布商品或分类信息时时,直接报错:数据校验不对,程序返回 内容来自
原因:member/inc/inc_archives_functi*****.php函数function PrintAutoFieldsEdit 内缺少输出dede_fieldshash字段值,导致编辑程序条件判断一直为真。
临时处理方法:
查找
function PrintAutoFieldsEdit(&$fieldset, &$fieldValues, $loadtype='all')
在
$dtp = new DedeTagParse();
之前加入
global $cfg_cookie_encode;
查找
echo "<input type='hidden' name='dede_addonfields' value=\"".$dede_addonfields."\">\r\n";
在其之后另行一行加入
echo "<input type=\"hidden\" name=\"dede_fieldshash\" value=\"".md5($dede_addonfields.$cfg_cookie_encode)."\" />";
第二个问题:在会员中心编辑相集时,如果缩略图上传框未选择有本地图片,会报错:Not allow filename for not userdir
原因:在对缩略图作检查时程序include/helpers/upload.helper.php使用了多条件判断,导致错误了!
临时处理方法:
查找
else if( !preg_match('#^http:#', $handname) && !preg_match('#^/'.$cfg_user_dir.'/'.$userid."#", $handname) && !$isadmin )
替换为
else if( preg_match('#^http:#', $handname) && !preg_match('#^/'.$cfg_user_dir.'/'.$userid."#", $handname) && !$isadmin )