php - SQL 按 id 删除行

标签 php mysql sql database

我正在尝试通过 ID 删除 SQL 数据库中的一行。我在这里发现了与此相关的问题,但似乎没有任何效果,也许是因为我的页面是根据选择变量填充的(动态?)。这些行根据下拉列表(locationlab)显示在我的页面上,并且每行后面都有一个删除按钮。 It looks like this.

我将 ID 临时显示在行的末尾,只需确保代码能够看到该变量(确实如此!)。

填充页面的代码如下所示:

<?php
    $locationlab = $_POST[locationlab];
    $sql = "SELECT * FROM lab WHERE locationlab LIKE '{$locationlab}'";
    echo($locationlab);
    $result = $conn->query($sql);
     if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo'
  <table>
  <form action=testpage2.php method=post>
    <td width="10%"><input type=text name=make value='. $row["make"].'></td>
    <td width="10%"><input type=text name=model value='. $row["model"].'></td>
    <td width="20%"><input type=text name=hostname value='. $row["hostname"].'></td>
    <td width="15%"><input type=text name=ipaddress value='. $row["ipaddress"].'></td>
    <td width="20%"><input type=text name=ipmiipaddress value='. $row["ipmiipaddress"].'></td>
    <td width="15%"><input type=text name=terminalserveraddress value='. $row["terminalserveraddress"].'></td>
    <td width="10%"><input type=text name=locationlab value='. $row["locationlab"].'></td>
    <td><input type=submit name=update value=update></td>
    <td><input type=submit name=delete value=delete></td>
    <td id=id name=id value='. $row["id"].'>'. $row["id"].'</td>
</table>
</form>';
        }}
        ?>

我可以在 phpMyAdmin 页面中手动输入下面的 SQL 查询,这样我就知道它是正确的。 删除按钮的代码如下所示:

   <?php
if(isset($_POST['delete'])) {
$deletequery = ("DELETE * FROM lab WHERE ='$_POST[id]'");
mysql_query($deletequery, $conn);  
};
?>

当我单击删除按钮时,它似乎刷新了页面,但没有任何变化。我想如果我能让删除按钮工作,更新将以类似的方式工作,但现在我被难住了。

最佳答案

<?php
if(isset($_POST['delete'])) {
    $deletequery = ("DELETE FROM lab WHERE **columnName** ='$_POST[id]'");
    mysql_query($deletequery, $conn);  
}
?>

查询中缺少列名称。另外,DELETE语句中没有*,因为删除意味着删除行。

关于php - SQL 按 id 删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36967899/

相关文章:

javascript - 没有在nodeJs中的嵌套查询 block 之外获取结果

mysql - 无法在 mysqli 中选择包含多个值的行

iphone - 任何人都知道基于Cocoa Touch SQL数据库的应用程序的好教程

sql - 如何序列化(以逗号分隔的列表)SQL 行

sql - Sybase 中是否可以动态强制使用索引?

javascript - Ajax 发送数据并从数据库中获取值

php - 使用 PDO 从 MySQL 表获取下一个自动增量(无需 INSERT)

php - 如何: Dynamic 7 day forecast calendar loops - PHP, MySQL

php - 如何使用 td 中的 onclick 事件添加表格行

c# - 从sql查询中获取数据到文本框中