2012-03-21 20 views
22

私は> 1000要素で本当に大きなフォームを持っています。彼らはすでに、フォームのHTML構造これは、質量銀行取引のためのDATAUSファイルを作成することです

   {foreach from=$result item=item} 
        <tr> 
         <td><input type="text" value="{$item.receiver.name}" name="item[{$item.id}][receiver][name]" /></td> 
         <td><input type="text" value="{$item.receiver.account_number}" name="item[{$item.id}][receiver][account_number]" /></td> 
         <td><input type="text" value="{$item.receiver.bank_code}" name="item[{$item.id}][receiver][bank_code]" /></td> 
         <td><input type="text" value="{$item.amount}" name="item[{$item.id}][amount]" /></td> 
         <td><input type="text" value="{$item.usage.first}" name="item[{$item.id}][usage][first]" /></td> 
         <td><input type="text" value="{$item.usage.second}" name="item[{$item.id}][usage][second]" /></td> 
         <td><input type="text" value="Yourdelivery GmbH" name="item[{$item.id}][usage][third]" /></td> 
         <td> 
          <input type="checkbox" value="1" name="item[{$item.id}][import]" /> 
         </td> 
        </tr> 
       {/foreach} 

内にネストされています。しかし、1000行を超えると、$ _POST配列に要素が追加されなくなり、デバッガには次の要素数が表示されます。

Xdebug Output

私はすでにテスト用に100Mにmax_post_sizeを追加しましたが、何も助けません。

+1

このサーバーにSuhosinがインストールされていますか? 'php -i |を実行するgrep -i 'Suhosin''をコマンドラインで見つけてください。 ['suhosin.post.max_vars'](http://www.hardened-php.net/suhosin/configuration.html#suhosin.post.max_vars)と[' suhosin.post.max_array_index_length'](suhosin.post。 max_array_index_length)。 – Treffynnon

+0

[この提案](http://www.php.net/manual/en/ini.core.php#101755)は役に立ちますか? – Ryan

+0

はMYSQLのコンソールをシミュレートしなければならないときに同様の問題を抱えていました。私は$ _SESSION変数を使用しました。問題なく長い文字列(1k行以上)を渡すことができました。 –

答えて

38

max_input_varsも変更してみてください。詳細情報:PHP max_input_vars and big forms

+1

さらに詳しい情報へのリンクが役立ち、私の問題を解決しました。ちょっとしたヒント:OS X Mountain Lionのphp.iniファイルの場所は**/private/etc/php.ini **です。私は** php --ini **コマンドを使って見つけました。 – csonuryilmaz