gpt4 book ai didi

php - 当我单击按钮时,如何识别 php 中的下拉列表值并在 MySQLi 中删除它?

转载 作者:行者123 更新时间:2023-11-29 10:48:56 25 4
gpt4 key购买 nike

我制作了一个下拉列表。列表中有汽车的名称。我想从 MySQLi 中删除下拉列表中选择的那辆车。例如,我的数据库中有四辆车:car_id,car_name。 1、奥迪; 2、宝马; 3、马自达; 4、法拉利。

下拉列表中出现了四辆车,如果我选择宝马,我想从数据库中删除。

我制作了下拉列表:

<?php
echo "<br/>";

$result = $db->query("SELECT car_id, car_name FROM cars");

echo "<html>";
echo "<body>";
echo "<select name='id'>";

while ($row = $result->fetch_assoc()) {
unset($id, $name);
$id = $row['car_id'];
$name = $row['car_name'];
echo '<option value="'.$id.'">'.$name.'</option>';
}
echo "</select>";
echo "</body>";
echo "</html>";
?>

删除按钮表单:

<form action="<?php echo $_SERVER["PHP_SELF"] ?>" method="POST">
<table>
<tr>
<td colspan="1"><input type="submit" name="Delete" value="Delete" /></td>
</tr>
</table>
</form>

删除代码:

<?php
if(isset($_POST['Delete'])) {
mysqli_query($db, "DELETE FROM cars where car_name = '$name' ");
}
?>

问题是它删除了数据库中的最后一个值,而不是我在下拉列表中选择的值。

最佳答案

将 select 包裹在 from 中,并获取汽车的 id 而不是名称。

<?php
// get the id of the selected car.
if (isset($_POST['Delete'])) {
$id = $_POST['id'];
mysqli_query($db, "DELETE FROM cars where car_id = '$id' ");
}
$result = $db->query("SELECT car_id, car_name FROM cars");
?>
<html>
<body>
<form action="<?php echo $_SERVER["PHP_SELF"] ?>" method="POST">
<select name='id'>
<?php while ($row = $result->fetch_assoc()) {
unset($id, $name);
$id = $row['car_id'];
$name = $row['car_name'];
echo '<option value="' . $id . '">' . $name . '</option>';
}

?>
<input type="submit" name="Delete" value="Delete">
</form>
</select>
</body>
</html>

关于php - 当我单击按钮时,如何识别 php 中的下拉列表值并在 MySQLi 中删除它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44095493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com