phpcms标题不能为空的解决办法:首先打开并修改“global.func.php”文件内容;然后找到并打开“form.inc.php”文件;接着添加语句为“$linkageidb=$linkageid+1;”;最后更新缓存即可。

解决phpcms标题不能为空的问题

PHPCMS V9为联动菜单字段添加验证提醒功能,解决标题不能为空

v9系统中,如果你在模型中添加了联动菜单字段

就算你在字段设置中设置了最小值为1,提交内容之前你不选择联动菜单中的值,也不会出现类似类似“标题不能为空”这样的提示

下面提供解决办法

打开phpcms\libs\functions\global.func.php文件,找到大概859行中的

$var_input = $defaultvalue && (route_a=='edit' || route_a=='account_manage_info') ? '<input type="hidden" name="info['.$id.']" value="'.$defaultvalue.'">' : '<input type="hidden" name="info['.$id.']" value="">';

修改为:

$var_input = $defaultvalue && (route_a=='edit' || route_a=='account_manage_info'  || route_a=='info_publish') ? '<input type="hidden" name="info['.$id.']" id="a'.$id.'" value="'.$defaultvalue.'">' : '<input type="hidden" name="info['.$id.']" id="a'.$id.'" value="">';

其实也就是给隐藏的表单添加多一个 id="a'.$id.'"

具体你自己对比下

第二个就是

打开:

phpcms\modules\content\fields\linkage\form.inc.php

找到第三行,在其后加上

$linkageidb=$linkageid+1;
$errortips = $this->fields[$field]['errortips'];
if($errortips || $minlength) $this->formvalidator .= '$("#a'.$field.'").formvalidator({onshow:"",onfocus:"'.$errortips.'"}).inputvalidator({min:'.$linkageidb.',max:9999,type:"value",onerror:"'.$errortips.'"});';

下面附上修改后的phpcms\modules\content\fields\linkage\form.inc.php文件内容,和你自己的修改后的对比下

        function linkage($field, $value, $fieldinfo) {
$setting = string2array($fieldinfo['setting']);
$linkageid = $setting['linkageid'];
$linkageidb=$linkageid+1;
$errortips = $this->fields[$field]['errortips'];
if($errortips || $minlength) $this->formvalidator .= '$("#a'.$field.'").formvalidator({onshow:"",onfocus:"'.$errortips.'"}).inputvalidator({min:'.$linkageidb.',max:9999,type:"value",onerror:"'.$errortips.'"});';
return menu_linkage($linkageid,$field,$value);
}

文件修改也就这两个地方了,下一步就是进入后台,点击右上角的更新缓存

再进入到模型管理里面找到需要进行验证提示的联动菜单字段,在字段设置中把“数据校验未通过的提示信息”这一项填写上内容,比如“请选择**”

推荐:《phpcms教程》


解决phpcms标题不能为空的问题

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。