使用php无法从数据库中删除行

时间:2014-10-01 14:33:58

标签: php mysql

我无法从数据库中删除任何记录。我找不到任何错误。

我已经删除了另一张桌子中的记录,只是稍微改了一下,但这里没有用。下面是应用删除查询的代码。表的名称来自我要删除记录的位置,但这里没有发生。

deleteSupplier.php

<?php
mysql_connect("localhost","root","");
mysql_select_db("db_kiln");
$id1 = $_GET['id1'];
$query0 = "DELETE FROM tbl_supplier WHERE sup_id='$id1'";
if(mysql_query($query0)){
echo "<script>window.open('supplier_connect.php','_self')</script>";
}
else{
    echo "Not deleted";
    }
?>

这是我从数据库中获取数据的文件,并且每个记录都有删除按钮。当我单击按钮时,它不会删除记录并显示错误消息。我无法发现任何错误,我认为此代码中存在逻辑错误。请帮忙。

supplier_connect.php

<?php
mysql_connect("localhost","root","");
mysql_select_db("db_kiln");

$query = "Select * from tbl_supplier";
$run = mysql_query($query);
echo "<table border='1'>
<tr>
<th>Supplier Id</th>
<th>Name</th>
<th>Contact Number</th>
<th>Quotation </th>
<th>Remove</th>
</tr>";
while($row = mysql_fetch_assoc($run)){
echo "<tr>";
echo "<td>" . $row['sup_id'] . "</td>"; 
echo "<td>" . $row['sup_name'] . "</td>";
  echo "<td>" . $row['sup_contact'] . "</td>";
 echo "<td>" .$row['sup_quotation']. "</th>";
  echo '<td><a href="deleteSupplier.php?id1='.$row['sup_id'].'">Delete</a></td>';
  echo "</tr>";
}
echo "</table>";
?>

1 个答案:

答案 0 :(得分:0)

您可能拥有引用另一个表的供应商ID,并且在DELETE时,未设置任何操作。您需要在DELETE:Cascade或SET NULL上设置选项&#39;&#39;我要去SET NULL,否则你的整个参考记录也会被删除。

编辑:检查您的联系人和报价之间的关系,查看您的供应商的目的地。