香港独立IP空间
香港php空间
美国php空间
域名注册

phpcms版本升至V9.1.13(20120129)前台显示“栏目禁止投稿”的解决办法

ts 150x150 phpcms版本升至V9.1.13(20120129)前台显示“栏目禁止投稿”的解决办法

错误提示:栏目禁止投稿

最近无忧主机小编接待到一个客户的phpcms出现这样的报错:网站升级到phpcms 20120129的版本后,会员发稿出现栏目禁止投稿,报错截图如下图所示:

 

ht 150x150 phpcms版本升至V9.1.13(20120129)前台显示“栏目禁止投稿”的解决办法

phpcms后台

ht2 150x150 phpcms版本升至V9.1.13(20120129)前台显示“栏目禁止投稿”的解决办法

phpcms后台

客户过来寻求无忧小编的帮助。无忧主机小编最终帮他找到了解决方法,下面是小编的问题排查过程。

 

关于这个报错,无忧主机小编最先想到的是栏目的投稿权限没有开启,所以无忧小编去查看了一下是否栏目正常开启了投稿权限。这个主要是在程序后台查看。

在 后台——内容——管理栏目——修改 你要投稿的栏目——权限设置 下面的会员组 选上 允许投稿!

更新全站缓存应该就OK了!

 

 

 

不过这个方法对于这个客户并没有效果,他的网站主要是升级后才出现的失效,在PHPCMS官网论坛上也有一些客户遇到这样的问题。

原来,这个问题在官方的答复是一个程序bug,临时解决方法如下:

把phpcms/modules/member/content.php第114行至121行

foreach ($CATEGORYS as $catid=>$cat) {

if($cat['siteid']==$siteid && $cat['child']==0 && $cat['type']==0 && $priv_db->get_one(array('catid'=>$catid, 'roleid'=>$memberinfo['groupid'], 'is_admin'=>0, 'action'=>'add'))) break;

}

$catid = $_GET['catid'] ? intval($_GET['catid']) : $catid;

if (!$catid) showmessage(L('category').L('publish_deny'), APP_PATH.'index.php?m=member');

//判断本栏目是否允许投稿

if (!$priv_db->get_one(array('catid'=>$catid, 'roleid'=>$memberinfo['groupid'], 'is_admin'=>0, 'action'=>'add'))) showmessage(L('category').L('publish_deny'), APP_PATH.'index.php?m=member');

 

上面一块替换成:

foreach ($CATEGORYS as $catid=>$cat) {

if($cat['siteid']==$siteid && $cat['child']==0 && $cat['type']==0 && (!$priv_db->get_one(array('catid'=>$catid, 'is_admin'=>0, 'action'=>'add')) || $priv_db->get_one(array('catid'=>$catid, 'roleid'=>$memberinfo['groupid'], 'is_admin'=>0, 'action'=>'add')))) break;

}

$catid = $_GET['catid'] ? intval($_GET['catid']) : $catid;

if (!$catid) showmessage(L('category').L('publish_deny'), APP_PATH.'index.php?m=member');

//判断本栏目是否允许投稿

if ($priv_db->get_one(array('catid'=>$catid, 'is_admin'=>0, 'action'=>'add')) && !$priv_db->get_one(array('catid'=>$catid, 'roleid'=>$memberinfo['groupid'], 'is_admin'=>0, 'action'=>'add'))) showmessage(L('category').L('publish_deny'), APP_PATH.'index.php?m=member');

 

之后更新缓存即可。

 

相关文章推荐阅读:

PHPCMS更换服务器后前台后台无法登录的解决方法

PHPCMSV9出现上传图片文件浏览器卡死状态解决方法

PHPCMS V9.42版本上传图片出现UNDEFINED解决办法

本文地址:http://www.51php.com/phpcms/13494.html

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读:


搜索技术文档