1 回答

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