1 回答

TA貢獻1815條經驗 獲得超13個贊
如果您使用 GET,您肯定會遇到瀏覽器的字符限制。
相反,您應該在表單中使用POST 方法,例如
<form action="http://example.com" method="post">
當然,您max_input_vars應該超過您的字段最大金額。此設置限制了 superglobals $_GET,$_POST并$_COOKIE單獨使用。
如果您仍在使用 POST,則應驗證您的max_input_vars設置是否處于活動狀態:
<?php
echo "max_input_vars: " . ini_get('max_input_vars') . PHP_EOL;
echo "post_max_size: " . ini_get('post_max_size') . PHP_EOL;
?>
你說你添加php.ini到public_html. 通常php.ini不位于此文件夾中(可能是您的主機的特殊內容??。?。似乎您的 php.ini 格式不正確,因為您使用了 .htaccess 關鍵字,php_value并且您忘記對.htaccess使用等號max_input_vars。
如果您的 php.ini 不起作用,您應該嘗試將所有設置添加到您的 .htaccess 中,如下所示:
php_value post_max_size 512M
php_value max_input_vars 2000
正如@NigelRen 建議的那樣,您也可以拆分請求以減少字段總數。這可以通過使用AJAX來解決。它允許在不重新加載頁面的情況下向服務器發送請求。實現這一點的一個很好的 JavaScript 框架可能是jQuery。通過這種方式,您可以在失去焦點后更新單個字段,或者添加一個單獨的更新按鈕,該按鈕僅將這些行發送到已更改的服務器(例如,每個輸入都會獲得一個 ID,并且您計算所有具有焦點的行)。使用此方法,您還可以使用簡單循環限制發送到服務器的字段數量(例如,每個循環僅更新 100 個字段)。
另一種方法是分頁。這意味著您每頁僅顯示 x 行,因此用戶只能更新這些 x 行。
我建議使用 AJAX,因為它會顯著降低性能要求。
- 1 回答
- 0 關注
- 147 瀏覽
添加回答
舉報