Я не могу обновить свою новую цену в базе данных. База данных не будет обновляться. Я не уверен, где мой код поступил не так.Невозможно обновить значение из текстового поля в базу данных
while($row = mysqli_fetch_assoc($result)) {
echo "<tr>";
echo "<td>" . $row['Menu_id']. " </td>";
echo "<td>" . $row['Menu_type']. " </td>";
echo "<td>" ."<input type =text name=Price value =" .$row['Price']. " </td>";
echo "<td>" ."<input type=submit name=Update value=Update"." </td>";
echo "<td>" ."<input type =hidden name=hidden value = " .$row['Menu_id']. " </td>";
echo "</tr>";
}
echo "</table>";
}
if(isset($_POST['Update'])){
$sqlAdd = "UPDATE Menu SET Price ='$_POST[Price]' WHERE Menu_id ='$_POST[hidden]'";
$result = mysqli_query($con, $sqlAdd);
if(mysqli_query($con, $sqlAdd)){
echo '<p><strong><font color = "red">The price for Menu id '.$Menu_id.' is updated.</strong></font>';
//redirect page
header('Refresh :5 ; url = UpdateMenuPrice.php');
}
else {
echo "failed <br>";
}
Цена не обновляется.
Действительно ли это пример минимального кода? звучит для меня так, как будто вы можете ограничить его двумя строками, выполняющими SQL-запрос (если вы уверены, что эти две строки выполняются, что вы можете проверить, добавив некоторый выводный оператор спереди и после них) – hoijui
Некоторые общие замечания здесь: ' $ _POST [Price] '_probably_ должен быть' $ _POST ['Price'] 'или даже' $ _POST ['price'] ', если вы не определили константу' Post', то же самое для '$ _POST [hidden]'. Затем вам обязательно стоит начать читать об опасности «sql injection» и о том, как использовать «подготовленные заявления», чтобы предотвратить эту опасность, с которой вы сталкиваетесь с этим кодом. – arkascha