本帖最后由 jim4u 于 2012-7-10 17:02 编辑
现象: DiscuzX 2.5 后台群组-群组分类中,无法添加分类,包括一级分类和二级分类
原因:
在源代码/source/admincp/admincp_group.php中,第86-90定义rowtypedata数组时, 使用了不被你的服务器的PHP设置认可的标签:- <? echo cplang('groups_type_show_rows');?>
复制代码 而服务器PHP设置为只接受<?php ... ?>这样的完整标签, 不接受缩写标签 <? ... ?> . 因此输出的客户端脚本中, 产生了这样的代码:- var rowtypedata = [
- [[1,'<input type="text" class="txt" name="newcatorder[]" value="0" />', 'td25'], [3, '<input name="newcat[]" value="一级分类" size="20" type="text" class="txt" /> <? echo cplang('groups_type_show_rows');?><input type="text" name="newforumcolumns[]" value="0" class="txt" style="width: 30px;" />']],
- //浏览器此处报js脚本错误: Uncaught SyntaxError: Unexpected identifier
- [[1,'<input type="text" class="txt" name="neworder[{1}][]" value="0" />', 'td25'], [3, '<div class="board"><input name="newforum[{1}][]" value="新子分类" size="20" type="text" class="txt" /><? echo cplang('groups_type_show_rows');?><input type="text" name="newforumcolumns[{1}][]" value="0" class="txt" style="width: 30px;" /></div>']],
- [[1,'<input type="text" class="txt" name="neworder[{1}][]" value="0" />', 'td25'], [3, '<div class="childboard"><input name="newforum[{1}][]" value="新子分类" size="20" type="text" class="txt" /><? echo cplang('groups_type_show_rows');?><input type="text" name="newforumcolumns[{1}][]" value="0" class="txt" style="width: 30px;" /></div>']],
- ];
复制代码 解决方法一: 修改源代码
打开源代码 /source/admincp/admincp_group.php ,大概在第86-90行,将所有的 "<? echo" 替换为 "<?php echo" , 即:
原代码:- <? echo cplang('groups_type_show_rows');?>
复制代码 修改为:- <?php echo cplang('groups_type_show_rows');?>
复制代码 对,就是这么简单——只需要添加 “php”即可!
解决方法二: 修改服务器配置
如果你能修改服务器的php.ini配置文件, 那么可以不修改上述源代码, 直接修改php.ini即可:
将 short_open_tag 设为 On 或 1, 让它接受<? ... ?>这样的缩写格式
祝大家成功修复该bug!
|