单击删除 link 时删除数据库行

Deleting a database row when delete link is clicked

以下PHP脚本用于在我的数据库中检索一组数据(订单号)

<?php
            require("includes/db.php");

            $sql="SELECT * FROM `order` ";
            $result=mysqli_query($db,$sql);
echo"<head>";
echo'
        <link rel="stylesheet" href="view.css">
            <head>


        ';
echo"</head>";

echo "<body >";
echo "<table border=1 cellspacing=0 cellpadding=4 > " ;
echo"<tr bgcolor=grey>";
echo"<td align=center>";
echo "<font size=4>";
echo "<B>";
echo "Order No.";
echo "</B>";
echo"</td>";
echo"</tr>";


while($row=mysqli_fetch_array($result))
{

    echo"<tr>";
     echo"<td align=center>";
    echo $row["OrderNo."];
     echo "<br>";
     echo"</td>";
    echo"<td align=center>";
    echo "<a href='delete.php?del=";
    echo $row['OrderNo.'];
    echo">delete</a>";
     echo "<br>";
     echo"</td>";
    echo"</tr>";
}
    echo"</table>";

?>

当点击每个 ow 中的删除 link 时,必须删除特定行! PHP删除脚本如下

< ?php
     include("includes/db.php");

    if( isset($_GET['del']) )
    {
        $id = $_GET['del'];
        $sql= "DELETE FROM order WHERE OrderNo.='$id'";
        $res= mysqli_query($db,$sql) or die("Failed".mysql_error());

    }
?> 

我没有将第二个 PHP 脚本重定向到第一个脚本以识别错误!单击删除 link 时,我在屏幕上看到以下内容,没有删除任何行!

< ?php 
    include("includes/db.php"); 
    if( isset($_GET['del']) ) { 
        $id = $_GET['del']; 
        $sql= "DELETE FROM order WHERE OrderNo.='$id'"; 
        $res= mysqli_query($db,$sql) or die("Failed".mysql_error()); 
    } 
?>

单击删除 link 时如何纠正此问题以便删除行?

试试这个:

$sql= "DELETE FROM order WHERE OrderNo = '".$id."'";

你的第二个代码说明了一切。 将 < ?php 更改为 <?php。您一开始就错误地将文件识别为 php 脚本。

试试这个

$sql= "DELETE FROM `order` WHERE `OrderNo.` = '$id' ";

html table 行也有问题。您在删除之前没有关闭单引号(')。请尝试使用以下代码。

echo "<td align=center>";
echo "<a href='delete.php?del=";
echo $row['OrderNo.'];
echo "'>delete</a>";
echo "<br>";
echo"</td>";