12下一页
返回列表 发帖
查看: 2779|回复: 10

[已解决] 后台管理设置频繁报错

10

主题

24

回帖

40

积分

初学乍练

贡献
0 点
金币
5 个
发表于 2023-7-27 09:37:25 | 查看全部 |阅读模式
在包括且不限于以下页面修改内容后保存时,会报下截图错误:
1.全局-注册与访问控制
2.全局-SEO设置
3.全局-域名设置
4.全局-空间设置
5.全局-用户权限
6.全局-积分设置
7.全局-上传设置
8.全局-水印设置
9.全局-手机设置
10.全局-防采集设置
11.界面-导航设置
12.界面-界面设置
等...

报错截图如下:
截图202307270936594637.jpg
1 贡献

最佳答案

给用户栏目设置上资料项,或者打开 source\function\cache\cache_setting.php
找到
  1. foreach($profile_settings as $pval) {
  2.                                                 if(in_array($pval['fieldid'], $val['field'])) {
  3.                                                         $temp[$pval['fieldid']] = $pval['fieldid'];
  4.                                                 }
  5.                                         }
  6.                                         foreach($val['field'] as $fieldid) {
  7.                                                 if(!in_array($fieldid, $temp)) {
  8.                                                         $temp[$fieldid] = $fieldid;
  9.                                                 }
  10.                                         }
复制代码
修改为
  1. if (!empty($val['field']) && is_array($val['field'])) {
  2.                                                 foreach($profile_settings as $pval) {
  3.                                                         if(in_array($pval['fieldid'], $val['field'])) {
  4.                                                                 $temp[$pval['fieldid']] = $pval['fieldid'];
  5.                                                         }
  6.                                                 }
  7.                                                 foreach($val['field'] as $fieldid) {
  8.                                                         if(!in_array($fieldid, $temp)) {
  9.                                                                 $temp[$fieldid] = $fieldid;
  10.                                                         }
  11.                                                 }
  12.                                         }
复制代码

回复

使用道具 举报

4

主题

972

回帖

24万

积分

管理员

官方有偿服务QQ 1453650

贡献
174 点
金币
240005 个
QQ
发表于 2023-7-27 09:46:30 | 查看全部
用户栏目设置里,未选择任何资料项
回复

使用道具 举报

13

主题

3161

回帖

5375

积分

应用开发者

贡献
373 点
金币
169 个
QQ
发表于 2023-7-27 09:46:46 | 查看全部
你这什么版本的dz呀?
php版本改成  php7吧; 别用php8 了
回复 1

使用道具 举报

10

主题

24

回帖

40

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-7-27 09:50:46 | 查看全部
天外飘仙 发表于 2023-7-27 09:46
你这什么版本的dz呀?
php版本改成  php7吧; 别用php8 了

php 8.0.26,这个有讲究吗?
回复

使用道具 举报

10

主题

24

回帖

40

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-7-27 09:51:16 | 查看全部
天外飘仙 发表于 2023-7-27 09:46
你这什么版本的dz呀?
php版本改成  php7吧; 别用php8 了

dz是3.5的
回复

使用道具 举报

17

主题

588

回帖

1852

积分

应用开发者

贡献
66 点
金币
902 个
QQ
发表于 2023-7-27 09:54:46 | 查看全部
给用户栏目设置上资料项,或者打开 source\function\cache\cache_setting.php
找到
  1. foreach($profile_settings as $pval) {
  2.                                                 if(in_array($pval['fieldid'], $val['field'])) {
  3.                                                         $temp[$pval['fieldid']] = $pval['fieldid'];
  4.                                                 }
  5.                                         }
  6.                                         foreach($val['field'] as $fieldid) {
  7.                                                 if(!in_array($fieldid, $temp)) {
  8.                                                         $temp[$fieldid] = $fieldid;
  9.                                                 }
  10.                                         }
复制代码
修改为
  1. if (!empty($val['field']) && is_array($val['field'])) {
  2.                                                 foreach($profile_settings as $pval) {
  3.                                                         if(in_array($pval['fieldid'], $val['field'])) {
  4.                                                                 $temp[$pval['fieldid']] = $pval['fieldid'];
  5.                                                         }
  6.                                                 }
  7.                                                 foreach($val['field'] as $fieldid) {
  8.                                                         if(!in_array($fieldid, $temp)) {
  9.                                                                 $temp[$fieldid] = $fieldid;
  10.                                                         }
  11.                                                 }
  12.                                         }
复制代码

回复

使用道具 举报

10

主题

24

回帖

40

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-7-27 09:58:05 | 查看全部
天外飘仙 发表于 2023-7-27 09:46
你这什么版本的dz呀?
php版本改成  php7吧; 别用php8 了

切换php7已解决,感谢大佬!
回复

使用道具 举报

10

主题

24

回帖

40

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-7-27 10:00:36 | 查看全部
1314学习网 发表于 2023-7-27 09:54
给用户栏目设置上资料项,或者打开 source\function\cache\cache_setting.php
找到
修改为

切换php7已解决,这段代码看上去是加了个控制和非数组的判断,如果不满足条件不执行,那能正确保存吗?虽然那个报错,但是刷新页面后,大部分设置项都有保存成功
回复

使用道具 举报

13

主题

3161

回帖

5375

积分

应用开发者

贡献
373 点
金币
169 个
QQ
发表于 2023-7-27 10:18:15 | 查看全部
xujingad 发表于 2023-7-27 10:00
切换php7已解决,这段代码看上去是加了个控制和非数组的判断,如果不满足条件不执行,那能正确保存吗?虽 ...

没啥问题的;  php对代码要求更严格! 等程序修复就可以了
回复

使用道具 举报

0

主题

35

回帖

103

积分

应用开发者

贡献
5 点
金币
39 个
QQ
发表于 2023-7-27 10:51:25 | 查看全部
PHP v8.1.18,没看到报错
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2025-5-9 17:08 , Processed in 0.075125 second(s), 31 queries .

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2025 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表