PHP.ini 有个值 max_input_vars 默认是 1000
变量的解释是:
所以他导致的问题是 最多能接受 1000个变量 <?php parse_str("name=Bill&age=60",$myArray); print_r($myArray); ?> 而magento 后台在分类页 将产品分到某个分类下就是采用了 parse_str 的方法 由此产生的问题就是 最多能将某个分类保存 1000或者1001 个产品。再多了 就会报错 Warning: parse_str(): Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in /app/code/core/Mage/Adminhtml/controllers/Catalog/CategoryController.php on line 310 所以最直接的解决办法是 增大 max_input_vars 的值 但是 始终会有瓶颈。 更改程序 修改 文件: app\code\core\Mage\Adminhtml\controllers\Catalog\CategoryController.php 的函数 saveAction()
其中一段 if 程序修改为:
“` if (isset(data['category_products']) && !category->getProductsReadonly()) { foreach ($exploded as $row) { $temp = array(); parse_str($row, $temp); list($key, $value) = each($temp); if(!empty($key)) { $products[$key] = $value; } } $category->setPostedProducts($products); } 相信你可以知道修改的程序具体位置在哪里 :)“` (责任编辑:好模板) |