Mysql 在PHP中,如何调试为什么删除查询不起作用?

Mysql 在PHP中,如何调试为什么删除查询不起作用?,mysql,Mysql,以下是我收到的错误: 注意:第9行C:\EasyPHP-12.1\www\final project\book\admin\process\u del\u contact.php中的未定义索引:id 无法执行 这是我的代码: MySQL数据库: con_id / con_nm / con_email /con_query 尝试在查询中添加单引号: $query="delete from contact where con_id ='" . $_GET['id'] . "'"; 一些人对未来

以下是我收到的错误:

注意:第9行C:\EasyPHP-12.1\www\final project\book\admin\process\u del\u contact.php中的未定义索引:id 无法执行

这是我的代码:

MySQL数据库:

con_id / con_nm / con_email /con_query

尝试在查询中添加单引号:

$query="delete from contact where con_id ='" . $_GET['id'] . "'";

一些人对未来提出了建议:

在数据库中执行写入操作时,切勿使用GET参数。是的,删除也是一种写入操作 在将输入传递到\u array、isset、array\u key\u中的数据库服务器之前,请始终检查输入 在使用输入之前,请始终验证输入并手动将其转换为正确的类型。 在查询中使用参数时,始终使用准备好的语句和参数绑定。 不要使用mysql_*函数,它们已被弃用,请改用mysqli_*或PDO 查询的问题在于如何构建它。您没有检查$\u GET数组中是否存在“id”键

另外,请尝试找出如果我将其作为'id'GET参数发送:1或1=1会发生什么

+1建议
请勿使用生产环境中的root用户访问数据库!创建一个新用户并仅授予所需权限。

使其更简单,尝试为“id”创建新变量:

$id = $_GET["id"];
$query = mysql_query ("delete from contact where con_id = '$id'");
if($query) {
    echo "deleting data success";
} else {
    echo "deleting data failed".mysql_error();
}
并确保您的代码已连接到数据库。对不起,英语不好

$id = $_GET["id"];
$query = mysql_query ("delete from contact where con_id = '$id'");
if($query) {
    echo "deleting data success";
} else {
    echo "deleting data failed".mysql_error();
}