Php 从数据库中删除行-无法找到它

Php 从数据库中删除行-无法找到它,php,Php,我正试图从数据库中删除一个项目,但它不起作用。 我以为它可以工作,但它正在删除数据库中的第一个项目,而不是所选的项目 这是我的 一个指向delete.php的链接,然后我将此链接用于delete.php <?php ob_start(); include_once('../mysql_connect.php'); // contact to database $host = "localhost"; $username = "admin"; $password = "pass

我正试图从数据库中删除一个项目,但它不起作用。 我以为它可以工作,但它正在删除数据库中的第一个项目,而不是所选的项目

这是我的

一个指向delete.php的链接,然后我将此链接用于delete.php

<?php
ob_start();
include_once('../mysql_connect.php');

// contact to database


$host = "localhost";
$username   = "admin";
$password   = "password";
$database="database";
$tbl_name="new_equip";

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$database")or die("cannot select DB");

// get value of id that sent from address bar 
$id=$_GET['id'];

// Delete data in mysql from row that has this id 
$sql="DELETE FROM $tbl_name WHERE id='$id'";
$result=mysql_query($sql);

// if successfully deleted
if($result){
echo "Deleted Successfully";
echo "<BR>";
echo "<a href='inventory.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?>
<?php
$eid = (int) $_GET['id'];
if ($eid < 1)
?>

  • 不要将GET直接放在可能导致SQL注入的变量中
  • 不要使用mysql。。。改用mysqli
  • 进一步格式化您的代码
  • 然后回到主要问题:
    回显$id以查看它是否正确;)在您的代码中,我看不到其他问题。

    。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO,。是否检查了它是否发送了正确的id以进行删除?您可能不需要
    ob_start()
    此处(在复制和粘贴之前查找函数的作用),您需要停止使用
    mysql\uuu
    ,因为它已被弃用(同样,在复制和粘贴之前查找文档中函数的作用)。输入错误?echo$eid应该是$id?id是一个整数,所以在删除查询中应该没有引号。我正在寻找将所有mysql转换为mysqli。我有一个转换器的基础上张贴在这里,但我不能让它看到任何文件。我想这是因为我在一台mac电脑上,它展示了如何在windows上实现这一点。这是我从中获得转换器的链接。请不要为这个小代码使用转换器。这里有一个很酷的教程,介绍了一些基本的东西:它不适用于这一点点代码。我有一个完整的网站,我需要转换。有大约10页,我需要重做的一切,刚刚学习它,我想这将需要我很长的时间才能把它全部改变。
    <?php
    $eid = (int) $_GET['id'];
    if ($eid < 1)
    ?>