[英]PHP variables entered as 0 in MySQL database
我對 php 和 mysql 比較陌生。 我在這部分代碼中要做的是根據 2 個文本框的輸入更新數據庫中的 2 列信息。 每當我嘗試更新數據庫中的值時,它們都會更新為 0。我在聲明 $ 變量之后放置了 echo 語句,並且兩個變量的值與我在框中鍵入的值相同。 但是當我運行 sql_query 時,數據庫中的新值是 0 而不是 2 $ 變量的值。 任何幫助將非常感激! 提前致謝!
<?php
$result = mysql_query("SELECT * from place_order ORDER BY item_name;");
echo "<form action='' method='POST'>Select an item:<select name='selection'><option>Select...</option>";
while ($row = mysql_fetch_assoc($result))
{
$item_name = $row["item_name"];
echo "<option>$item_name</option>";
}
echo "</select>
<input type='submit' value='Select Item' style='float:right;'/>";
$selection = $_POST['selection'];
echo "<br><br>Type the updated information into the text fields<br><br>";
echo "
<table width='300'>
<tr>
<td align='left'>Item Cost(€): </td>
<td align='left'><input type='text' name='cost'></td>
</tr>
<tr>
<td align='left'>Item Quantity: </td>
<td align='left'><input type='text' name='quantity'></td>
</tr>
<tr>
<td align='left'></td>
<td align='left'><input type='submit' name='button' value='Submit'></td>
</tr>
</table>
";
$cost = $_POST['cost'];
$quantity = $_POST['quantity'];
$selection = $_POST['selection'];
$sql = "UPDATE place_order SET item_cost='$cost', quantity='$quantity' WHERE item_name='$selection' ORDER BY item_name;;";
$query_update = mysql_query($sql);
if($query_update)
{
echo "Table updated! Click View Stock in the menu to view the updated table";
}
echo"</form>";
?>
這個腳本有兩種形式:
這些表格中的每一個都單獨發布。
讓我們有某種狀態轉換表:
$_POST['select']
有一個值,然后在第二種形式中正確填充$select
在該狀態下為空簡單的解決方案:只制作一種形式,你就完成了(除了完全丟失的錯誤處理......)
第二種解決方案:如果只設置了$_POST['select'] ,則將$select
的值放在一個隱藏字段中,並在回顯第二個表單后退出腳本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.