似乎當我.post()一個大數組中大量的信息被刪除。在下面的代碼片段中,第一個.html()顯示所有數組數據,而PHP的返回結果僅顯示一部分數據。POST數據被剪短
的JavaScript:
$('.inner').html(JSON.stringify(dbData));
$.post("test.php", {'filename' : filename, 'dbData' : dbData}, function(result) {
$('.inner').html(result);
});
PHP:
ini_set('display_errors', 'On');
$filename = $_POST['filename'];
$dbData = $_POST['dbData'];
$file = $myfile = fopen($filename, 'w');
echo json_encode($dbData);
php.ini中具有的post_max_size = 8M,我通過發送數據超過800萬少了很多。
編輯:數組中的數據似乎在某個點後被切斷。沒有錯誤。
這可能是因爲你的php.ini文件中的數據大於'post_max_size'。你也可以檢查你的'max_upload_size'配置。另一種方法是檢查錯誤日誌,看看是否可以從那裏發現問題。另外,確保你正在查看正確的'php.ini'文件(你可能有多個文件)。您還應該注意到,在修改'php.ini'中的任何設置後,您需要重新啓動Web服務器才能使更改生效。 – Cyclonecode
發佈時產生的錯誤是什麼?您無需檢查這些POST元素是否存在。 '$ filename = isset($ _ POST ['filename'])?$ _ POST ['filename']:「」; $ dbData = isset($ _ POST ['dbData'])?$ _ POST ['dbData']:「」; if(!empty($ filename)&&!empty($ dbData)){...}' – Twisty
沒有錯誤,數組的全部值都丟失, – FuzzyStatic