记录不会从数据库中删除

问题描述:

我想从数据库中使用php删除记录。这应该发生在我点击一个按钮时,没有显示错误,并且查询出现在屏幕上,但是记录仍然在数据库上。记录不会从数据库中删除

phpmyadmin给我使用以下代码:DELETE FROM'the shop'。'客户” WHERE‘客户’。'客户ID = 8

<?php 
$host="localhost"; // Host name 
$tbl_name="customer"; // Table name 
$db_user="root"; 
$db_pass=""; 

$connect = mysql_connect("$host", "$db_user", "$db_pass"); 
$db_name="the_shop"; // Database name 
mysql_select_db("$db_name"); 
if (!$connect) 
{ 
die("MySQL could not connect!"); 
} 

if(isset($_GET['submit2'])){ 

$db_username = $_GET['username']; 

$sql4 = "DELETE FROM 'the_shop'.'customer' WHERE 'customer'.'CustomerID' = 8" 
or die('error deleting record'); 
mysql_query($sql4); 
echo $sql4; 
} 
?> 

我知道这将只删除了一个客户ID是= 8 我的意思是,一旦这个工作,我会用用户名和更换客户ID记录'8'与相关的变量,将通过表格给出值

任何帮助表示赞赏

Use this,It is working. 
<?php 
$host="localhost"; // Host name 
$tbl_name="customer"; // Table name 
$db_user="root"; 
$db_pass=""; 

$connect = mysql_connect("$host", "$db_user", "$db_pass"); 
$db_name="the_shop"; // Database name 
mysql_select_db("$db_name",$connect); 
if (!$connect) 
{ 
die("MySQL could not connect!"); 
    } 

if(isset($_GET['submit2'])){ 

$db_username = $_GET['username']; 

$sql4 = "DELETE FROM `the_shop`.`customer` WHERE `customer`.`CustomerID` = 8"; 

mysql_query($sql4,$connect) or die('error deleting record'); 
echo $sql4; 
} 

?>

+0

我不知道你改变了什么,所以我很难从你的答案中学习,请让我知道吗? 我已经做出了改变,你是正确的,它现在正在工作:) – 2013-05-10 12:12:27

+0

你可以检查'the_shop'。'customer'和'the_shop'.customer'之间的区别,请检查你的和rakesh的$ sql4。 即你使用“'”,你应该使用“'”。 – unknownbits 2013-05-15 13:18:00

您使用引号来代替反勾

$sql4 = "DELETE FROM `the_shop`.`customer` WHERE `customer`.`CustomerID` = 8"; 

而且(因为你没有使用任何保留的关键字在这里,在这种情况下)你不需要背蜱,以及你在错误的使用die()

您的陈述不正确。您使用引用而不是后面的勾号。但是你可以让你的陈述更容易。

$sql4 = "DELETE FROM customer WHERE CustomerID = 8"; 

  1. 你并不需要指定要在查询中查询的数据库。 这个就足够了:

    DELETE FROM customer WHERE CustomerID = 8 
    
  2. MySQL扩展已被弃用。这意味着它不再被PHP支持,不应该被使用。改为mysqlipdo

+0

您正在使用单引号,这是无效的 – 2013-05-10 10:21:12

+0

您是对的,我得到的值和字段混淆在一起。 – 2013-05-10 10:22:21

$sql4 = "DELETE FROM `the_shop`.`customer` WHERE `customer`.`CustomerID` = 8" 
mysql_query($sql4);or die('error deleting record'); 
echo $sql4; 

你可以使用这个。您无需指定数据库。

delete from customer where CustomerID = 8