2013-03-28 76 views
1

結束我就提交多種形式的一個小問題:PHP提交表單後提交271個變量

我試圖提交的$_POST-variables一個更大的數字,但是,我的服務器端腳本結束(或只是分解後),總共提交表單變量。

試着在本地主機上,一切正常,沒有任何問題。 在這裏,總共提交了771個帖子變量。

到目前爲止,我還做了一些小小的研究,試圖找出我可能爲了配置更大的數據範圍或類似的東西而可能改變的變量類型。

因此,這裏是我的服務器配置:

max_execution_time 30 30 
max_input_nesting_level 64 64 
max_input_time 60 60 
max_input_vars 1000 1000 
memory_limit 256M 256M 
post_max_size 8M 8M 

本地主機配置

max_execution_time 30 30 
max_file_uploads 20 20 
max_input_nesting_level 64 64 
max_input_time 60 60 
max_input_vars 1000 1000 
memory_limit 256M 256M 
post_max_size 8M 8M 

正如你所看到的,這是相同的配置... 我也有了Suhosin - 擴展名安裝在我的服務器上,默認配置。我沒那麼熟悉這個擴展,但使用默認值應該具有的影響(我猜:))

服務器的PHP版本:5.3.9
地方:5.3.17

的問題與此one非常相似。

我想現在要解決好幾個星期的問題,如果你有什麼樣的想法..這純粹是偉大的;)

謝謝:)

UPDATE:

如果我使用這個方法(thanks):

$pairs = explode("&", file_get_contents("php://input")); 
$vars = array(); 
foreach ($pairs as $pair) { 
    $nv = explode("=", $pair); 
    $name = urldecode($nv[0]); 
    $value = urldecode($nv[1]); 
    $vars[$name] = $value; 
} 
print_r($vars); 

我看到所有的表單變量,並說我之前顯示的內容。然而,通過使用

isset($_POST['LanguageContentForm'] 

和保存是一個變量不起作用直接訪問$ _ POST變量..:/

+2

'localhost'' POST'請求​​會更快地傳輸,所以它可能不會觸及_max_execution_time_。如果將'localhost'上的_max_execution_time_降低到非常小的值,您可以在本地重現問題嗎?同樣,如果您增加遠程服務器上的值,問題是否仍然存在? – andyb 2013-03-28 09:21:07

+0

可以幫助嗎? http://stackoverflow.com/questions/5077969/php-some-post-values-missing-but-are-present-in-php-input – Natrium 2013-03-28 09:21:21

+0

你能檢查Apache日誌文件,並有任何記錄錯誤嗎? – Amit 2013-03-28 09:21:54

回答

0

如果檢查phpinfo()函數,你可以看到一個suhosin.post變種.max_vars在每臺機器上。

你應該可以改變它。htaccess的像這樣的東西:變量

suhosin.request.max_varname_length 

Type: Integer 
Default: 64 

定義最大名稱長度(不包括可能的數組索引)可能通過COOKIE進行註冊:

php_value suhosin.post.max_vars 1000 
php_value suhosin.request.max_vars 1000 

更新

也許這一個了,URL或通過POST請求。該設置也是變量原點特定配置指令的上限。

+0

在遠程機器上,它被設置爲800的值..應該不夠嗎? – runFatTony 2013-03-28 09:38:45

+0

suhosin有很多不同的標誌。如果你傳遞的是數組而不是直接變量,那麼對這些變量也有限制......這裏有一個很好的參考:http://www.hardened-php.net/suhosin/configuration.html – 2013-03-28 09:44:22

+0

這個設置爲256服務器配置 – runFatTony 2013-03-28 10:03:23