我在 mysql 中有一个表,我通过以下代码将其打印在屏幕上:
include ('mysql_con.php');
mysql_select_db("jaz", $con);
$res1 = mysql_query("SELECT * FROM hovno ORDER BY id DESC");
echo "<form action='delete_from_db.php' method='POST'>";
echo "<table border='1'>";
echo "<tr>";
echo "<td colspan='6'>" . "<input type='submit' value='Delete Article'>" . "</td>";
echo "</tr>";
echo "<tr>";
echo "<td>" . "<b>" . "Delete" . "</b>" . "</td>";
echo "<td>" . "<b>" . "ID" . "</b>" . "</td>";
echo "<td>" . "<b>" . "Date" . "</b>" . "</td>";
echo "<td>" . "<b>" . "Title" . "</b>" . "</td>";
echo "<td>" . "<b>" . "Preview" . "</b>" . "</td>";
echo "<td>" . "<b>" . "Author" . "</b>" . "</td>";
echo "</tr>";
while($a=mysql_fetch_array($res1)) {
echo "<tr>";
echo "<td>" . "<input type='checkbox' name='checkbox[]' value='" . $a["id"] . "'>" . "</td>";
echo "<td>" . $a["id"] . "</td>";
echo "<td>" . $a["created"] . "</td>";
echo "<td>" . $a["title"] . "</td>";
echo "<td>" . $a["preview"] . "</td>";
echo "<td>" . $a["author"] . "</td>";
echo "</tr>";
}
echo "</table>";
echo "</form>";
所以我将 id 作为复选框值放入数组中。 在另一个 php 文件中,我不想在数组中使用此 id 来删除带有这些 id 的记录。我不知道要使用什么代码来购买我尝试过:
<?php
include ('mysql_con.php');
mysql_select_db("jaz", $con) or die(mysql_error());
$del[]=$_POST["checkbox"];
$res1 = mysql_query("SELECT * FROM hovno WHERE id='$del'") or die(mysql_error());
while($a = mysql_fetch_array($res1)){
$b = $a["id"];
mysql_query("DELETE FROM hovno WHERE id ='$b'") or die(mysql_error());
}
?>
知道如何让它真正发挥作用吗?谢谢
最佳答案
虽然我不确定 PHP,但如果您获得以逗号分隔的 ID 列表,则可以使用 SQL 运算符“in”。像这样的事情:
$res1 = mysql_query("SELECT * FROM hovno WHERE id in (1,2,3)")
关于变量名的评论: A jeSTLi si ty promenne slusne nepojmenujes, tak se v tom uz nikdy nevyznas ;)
关于php - 传递数组并从 MySQL 表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9569331/