php sql 即使显示成功也不删除行
php sql not deleting row even showing success
我正在尝试使用 href 删除一行,它没有显示错误,但也没有从我的 table 中删除该行。不知道我做错了什么。
delete.php
require_once "db.php";
$id = $_GET['id'];
$sql = "DELETE FROM books WHERE isbn = ". $id;
if (mysqli_query($db, $sql)){
echo "Success";
}else{
echo "Error";
}
main.php
if($resultSet->num_rows > 0){
while($rows = $resultSet->fetch_assoc()){
$au = $rows['author'];
$bt = $rows['booktitle'];
$rev = $rows['reserved'];
echo"<tr><td>$au</td><td>$bt</td><td>$rev</td><td><a href='delete.php?id=".$rows['isbn']."'>Delete</a></td></tr>\n";
}
echo"</table>";
}
似乎如果您收到成功消息,那么查询 运行 成功,这意味着数据库连接建立正常,因此我们可以排除这种情况。
我认为您的查询 运行ning 但未在 ISBN 上找到任何匹配项,因此记录未被删除。我会尝试在执行之前回显实际的 SQL 查询,这样您就可以复制它,连接到数据库,然后自己将该查询粘贴到 运行 中。也许首先将其更改为 SELECT 语句,以便您可以查看它是否真的获取要删除的行。如果不是,那么带有该 ISBN 的行要么不存在,要么你的 ID 某处有 st运行ge 之类的东西,比如 ext运行eous space/other 奇怪的字符。
我正在尝试使用 href 删除一行,它没有显示错误,但也没有从我的 table 中删除该行。不知道我做错了什么。
delete.php
require_once "db.php";
$id = $_GET['id'];
$sql = "DELETE FROM books WHERE isbn = ". $id;
if (mysqli_query($db, $sql)){
echo "Success";
}else{
echo "Error";
}
main.php
if($resultSet->num_rows > 0){
while($rows = $resultSet->fetch_assoc()){
$au = $rows['author'];
$bt = $rows['booktitle'];
$rev = $rows['reserved'];
echo"<tr><td>$au</td><td>$bt</td><td>$rev</td><td><a href='delete.php?id=".$rows['isbn']."'>Delete</a></td></tr>\n";
}
echo"</table>";
}
似乎如果您收到成功消息,那么查询 运行 成功,这意味着数据库连接建立正常,因此我们可以排除这种情况。
我认为您的查询 运行ning 但未在 ISBN 上找到任何匹配项,因此记录未被删除。我会尝试在执行之前回显实际的 SQL 查询,这样您就可以复制它,连接到数据库,然后自己将该查询粘贴到 运行 中。也许首先将其更改为 SELECT 语句,以便您可以查看它是否真的获取要删除的行。如果不是,那么带有该 ISBN 的行要么不存在,要么你的 ID 某处有 st运行ge 之类的东西,比如 ext运行eous space/other 奇怪的字符。