PHP MySql删除查询

PHP MySql删除查询,php,mysql,sql,Php,Mysql,Sql,我的仪表板上有一个删除脚本,该脚本在移动域之前运行。 (不确定这是否相关) 下面是我的“deletejob.php”的代码 <?php error_reporting(0); $host = 'localhost'; $port = 3306; $database = 'database'; $username = 'username'; $password = 'password'; $UID = $_POST["ID"]; // Connect to the database

我的仪表板上有一个删除脚本,该脚本在移动域之前运行。

(不确定这是否相关)

下面是我的“deletejob.php”的代码

<?php
error_reporting(0);

$host = 'localhost';
$port = 3306;
$database = 'database';
$username = 'username';
$password = 'password';

$UID = $_POST["ID"];


// Connect to the database    
$dsn = "mysql:host=$host;port=$port;dbname=$database";
$db = new PDO($dsn, $username, $password); // connect

$Query = "DELETE FROM joblist WHERE ID='$UID'";
// Do a query thingy whatever its called
$statement = $db->prepare($Query);
$statement->execute();
while ($result = $statement->fetchObject()) {}

?>

必须使用SELECT语句找到要删除的行,如下所示:

$stmt= $conn->query("SELECT * FROM users WHERE id='".$_REQUEST['ids']."'");
此外,当您单击“删除”按钮时,必须发送以下内容,否则它将根本不会删除:

<input type="hidden" name="id" value="<?php echo $_REQUEST['ids'];?>">

如果您只是将值直接粘贴到查询中,那么使用预先准备好的语句就没有多大用处了……您的警报代码在哪里?在什么基础上显示警报?我们可以查看您的表单吗?既然代码中没有错误检查,它应该如何提醒您?我不确定prepare->execute是否适用于粘贴的变量。为什么在删除时使用fetchObject?您很容易受到sql注入的影响,如
0或'1'='1
$stmt= $conn->query("DELETE FROM users Where id = '".$_REQUEST['id']."'");