如果图像字段包含超过26个值,则无法保存/编辑节点

时间:2012-03-05 13:11:46

标签: drupal drupal-7

我有一个图库内容类型,使用图像字段将多个图片上传到节点。如果我只上传几张照片,一切都很顺利。但是当我尝试上传+26张图片时,我会在每次上传“Gallery X已更新”后收到以下消息。 (我没有按保存)。同时,图像字段消失。

之后,当我尝试按保存时,我得到“此页面上的内容已被其他用户修改,或者您已使用此表单提交了修改。因此,您的更改无法保存。”消息。

关闭节点而不保存,节点包含所有上传的图片,但我现在无法对节点执行以下操作:

  • 不保存发布/取消发布,网址别名,修订等方面的任何更改。单击“保存”将提示“节点X已更新”。消息但未保存更改。

  • 当我尝试上传其他图片时(图片28,29,30 ......)我再次得到“节点X已更新”。消息,图像字段消失,我再次无法使用保存按钮进行保存。

上传失败也发生过几次这个问题,但是当我尝试重现它时,每次在Drupal 7.12上的第27张照片上都会发生这种情况。这是我一直在努力解决的问题,我也将它发布在Drupal问题堆栈中:http://drupal.org/node/1468522

谢谢,Lars Bo

3 个答案:

答案 0 :(得分:1)

有类似的问题!当我下载大量图像(70+以上)时,节点未保存,未发布,无法更改正文,未上传新图像。 问题在于php.ini中的参数max_input_var

<强>解决方案: 如文档中所述,该指令只能按目录范围设置,这意味着通过.htaccess文件,httpd.conf或.user.ini(自PHP 5.3起)。

请参阅http://php.net/manual/en/configuration.changes.modes.php

将指令添加到php.ini中或将以下行放入.htaccess中将起作用:

php_value max_input_vars 3000
php_value suhosin.get.max_vars 3000
php_value suhosin.post.max_vars 3000
php_value suhosin.request.max_vars 3000

答案 1 :(得分:0)

我无法重现此错误。您是否只使用图像字段进行了全新的核心安装?你的模块是最新的吗?

您使用什么来上传26张以上的图片?像Plupload一样批量上传?还是一个接一个?我们需要更多信息。

答案 2 :(得分:0)

我现在花了一整天的时间来测试这个问题。它出现在Drupal 7,7.10和7.12中。幸运的是,这是有道理的,因为问题隐藏在PHP 。我的服务器使用的是PHP 5.2.0,显然Image Field代码至少需要php 5.2.5才能正常工作(事实证明,php 5.2.5是Drupal 7的官方最低版本,而推荐使用5.3)。 我把我的服务器放在PHP 5.3上,现在一切正常。我可以上传尽可能多的图片,没有奇怪的行为或错误信息。这真的很难调试......