2014-02-15 91 views
1

我有一個動態構建的表單,其中〜900個複選框在一個案例中,只有~755個被傳遞到我的處理頁面。大表格不包含所有元素

(減少形式的大小不是一個選項。這是一個調度矩陣與僱員向下左側和移位橫跨頂部。)

我的處理代碼是

foreach ($_POST as $key => $value){ 
    $keys=explode("-",$key); 
    if(!mysql_query("UPDATE week_schedule SET $keys[1]='$value' WHERE userid='$keys[0]'")){ 
    echo "<p>".$key." was not updated!</p>"; 
    $error=TRUE; 
    } 
} 

PLEASE HELP

+0

'foreach'前'count($ _ POST)'的值是多少?它是~755還是〜900? –

+0

看看是否可以幫助http://stackoverflow.com/questions/8710185/new-limit-within-php-1000-fields-per-post-does-someone-know-if-the-number-can – arilia

+0

@ShaunakKashyap它是~755的價值。 – KPK

回答

0

什麼是max_post_sizehttp://ua1.php.net/ini.core#ini.post-max-size)在您的服務器php.ini中,也許你可以運行它。另外,根據PHP手冊,比$_POST應該是空的,但它值得檢查。

也嘗試使用其他瀏覽器提交表單以確保此問題不是特定於瀏覽器的。

腳本可能會用盡max_execution_time,同時執行大約900個數據庫更新查詢。

P.S.我從評論中看到只有≈750個字段已通過的問題,因此您的表單中可能存在某些命名問題,並且您有一些具有相同名稱的複選框?

+0

post_max_size是128M,max_execution_time是30. 我不認爲我可以在我的共享主機上更改這些值。 我沒有任何重複的名稱複選框。 我的問題存在於所有瀏覽器中。 :( – KPK

相關問題