我正在嘗試通過 POST 請求將音樂評論的內容從一個頁面發送到另一個頁面。評論的表單包含一個字符限制為 9900 的 textarea 欄位(資料庫的評論字符限制為 10000):
<textarea name='review_text' cols='200' rows='10' maxlength='9900' placeholder='Reviewtext' required></textarea>
現在,如果我將長度為 342 個字符的示例文本粘貼到評論文本區域中,一切正常,我可以讀取 POST 引數并將它們提交到資料庫:
Musik ist sehr abgefahrene elektronische Musik, sie hat auch mit FKA twigs, RALIA, Bj?rk, Shygirl, Kanye West und SOPHIE kollaboriert, also ist Teil dieser Weird Leftfield Gang.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
但是,一旦字符數達到 343, POST 引數中的NONE就會被發送到下一頁:
Musik ist sehr abgefahrene elektronische Musik, sie hat auch mit FKA twigs, RALIA, Bj?rk, Shygirl, Kanye West und SOPHIE kollaboriert, also ist Teil dieser Weird Leftfield Gang.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
據我所見,apache 中沒有設定限制 POST 請求中的字符數量。此外,當我使用 Web 開發人員工具查看頁面時,我可以看到引數,但我發送它的頁面也無法讀取它們。我究竟做錯了什么?
編輯:這是我用來獲取引數的代碼。正如我所說,如果文本區域的文本長度超過 342 個字符,則不會檢索任何值,但所有值都在另一種情況下。
$festival_name = $_POST["festival"];
$edition_year = $_POST["edition"];
$artist = $_POST["artist"];
$review_text = $_POST["review_text"];
$category = $_POST["category"];
$song = $_POST["song"];
$link = $_POST["link"];
$date = date('Y-m-d');
uj5u.com熱心網友回復:
我自己解決了。問題似乎是 php.ini 中 post_max_size 的配置值。我一時興起將其設定為 20MB,并且有效。我不認為這是問題所在,因為 342 個字符距離 1MB 還很遠,但不知何故 POST 請求似乎變得相當大。
編輯:我在 .htaccess 檔案中所做的更改:
php_value post_max_size 20M
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/426781.html
