OpenCart(3.0.3.6)网站是几年前由开发人员建立的,我无法再联系了......并且由于某种原因超过一半的过滤器以看似随机的原则消失了。
该网站有大约 10 个过滤类别,其中大多数条目数量很少,但一个过滤类别大约有 1200 个条目。
网站管理员报告说,向此类别添加新条目后,超过一半的其他过滤器消失了(我可以通过查看数据库来确认 - 只剩下大约 400 个)。
我不是 OpenCart 专家...我查看了与此操作相对应的代码(保存过滤器列表 - admin/catalog/model/filter -> editFilter() )并将其与新的 OpenCart 安装进行比较:我怀疑以前的开发人员做错了什么 - 代码是相同的,所以我们可以排除一些自定义代码的问题(我认为......)。
我们能够恢复所有过滤器,因为网站管理员有备份,但现在我们担心即使向此类别添加 1 个过滤器也会破坏他的网站。
所以我的问题是:
任何想法将不胜感激!
谢谢!
进一步分析 POST 请求后发现问题:
服务器上的 PHP 版本已更改,并且(默认情况下我猜)配置了 max_input_vars=1000,这是 POST 请求中包含的值的确切数量。
在 php.ini 中设置更高的值可以解决该问题。