簡體   English   中英

$ _POST與表單在同一文檔上

[英]$_POST on the same document as the form

我在同一頁面上有html表單和PHP的問題。 這是我剛剛編寫的代碼的一部分:

這是我想通過單擊提交按鈕在陣列中插入ID的表格。 當我提交表單時, menge的值始終為空。 有人知道為什么會出現此問題嗎?

echo '<form name="aanzahl" method="POST" action="index.php?page=einzelansicht&id='.$a_id.'">';
echo '<input id="inputButton" type="text" name="menge" value="1" size="2" maxlength="2" disabled>';
echo '<input type="submit"  class ="warenkorbbtn" name="warenkorbbtn" value="In den Warenkorb">';
echo '</form>';

if(isset($_POST['warenkorbbtn'])){
    if (!isset($_SESSION['warenkorb'])){
        $_SESSION['warenkorb'] = array();
    }

    $_SESSION['warenkorb'][] = array('warenkorb_id'=>$a_id, 'menge'=>$_POST['menge']);
    echo "Artikel befindet sich nun im Warenkorb";
}

如果將disabled屬性設置為輸入元素,則在觸發“提交”操作時不會發送該元素的值。 嘗試刪除disabled屬性以獲取字段值。

禁用了屬性的表單元素將不會與表單一起發送其值:

此布爾值屬性指示表單控件不可用於交互。 特別是,click事件不會在禁用的控件上調度。 另外,禁用控件的值不會與表單一起提交。 1

為了使值與表單一起發送但仍防止用戶修改該值,請使用只讀屬性(盡管沒有什么可以阻止用戶使用其瀏覽器控制台更改/刪除該屬性)。

<input id="inputButton" type="text" name="menge" value="1" size="2" maxlength="2" readonly />

而且,即使您不關心用戶甚至看不到輸入,也可以將輸入類型設置為隱藏 (即( input type="hidden" /> ),盡管用戶仍可以使用其瀏覽器控制台更改該值。

您可以看到此phpfiddle演示的readonly屬性,其中已在該輸入上設置了readonly屬性。

還要注意, 輸入元素沒有允許的內容,因此是[空元素],因此我在元素的末尾添加了斜杠以正確關閉它(即<input..../> )。

在HTML中,對空元素使用結束標記通常是無效的。 例如,無效的HTML。 2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM