删除数据库中表行的代码赢得';不起作用


Code to delete table row in database won't work

我正试图删除数据库中表中的一行,但它不起作用。。。连接正常。我已经回显了表的行id,以确保它正常工作,但仍然不会删除。。。

如果你也需要连接代码,请告诉我。

代码:

<table>
  <tr>
    <td>Recent Posts</td>
  </tr>
  <?php while($row = mysql_fetch_array($result)) : ?>
    <td><?php echo $row['id']; ?></td>
    <td><?php echo $row['name']; ?></td>
    <td><?php echo $row['phone number']; ?></td>
    <td><a href="delete2.php?id=<?php echo $row['id'];?>">Schedule</a></td>
  </tr>
  <?php endwhile; ?>
</table>

delete.php代码:

  <?php
    $b=$_GET['id'];
    $sql='DELETE FROM on call WHERE id=$b';
//echoing just to make sure it is working correctly...
echo $b;
    ?>
    </br>
    </br>
    <a href='index2.php'>back to list</a>

您没有使用mysql_query执行DELETE sql命令

$sql = "DELETE FROM ...";
mysql_query($sql);

请注意,mysql函数现在已被弃用。此外,您应该保护您的代码不受SQL注入的影响。

我不理解您的sql语法。如果"on call"是您的表,请将您的表重命名为on_call,因此您的sql应该:

$sql = "DELETE FROM on_call WHERE id = '" . $b . "'";

您没有执行sql。mysql_query($sql);使用mysql功能防止注入。