为什么我的PHP代码没有删除数据库中的一行?

为什么我的PHP代码没有删除数据库中的一行?,php,mysql,Php,Mysql,下面的代码应该能够从表car中删除具有ProNumber='$searchTerm'和ProCode='$searchTerm1'的行,但不能删除。如有任何帮助,将不胜感激 <?php $searchTerm = trim($_GET['keyname']); $searchTerm1 = trim($_GET['codename']); //create a database connection mysql_connect("localhost","root","") or die("

下面的代码应该能够从表
car
中删除具有
ProNumber='$searchTerm'
ProCode='$searchTerm1'
的行,但不能删除。如有任何帮助,将不胜感激

<?php
$searchTerm = trim($_GET['keyname']);
$searchTerm1 = trim($_GET['codename']);
//create a database connection
mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products");
//Delete the record
$updateQuery = "DELETE FROM car WHERE ProNumber = '$searchTerm' AND ProCode ='$searchTerm1'";
mysql_query($updateQuery) or die("Error: ".mysql_error());
?>

只是一个猜测,但您可能遇到的一个问题是,
$searchTerm
周围有单引号。您正在搜索一个数字,但正在传递一个字符串

可能的修复(请注意,
$searchTerm
中缺少单引号):


只是一个猜测,但您可能遇到的一个问题是,
$searchTerm
周围有单引号。您正在搜索一个数字,但正在传递一个字符串

可能的修复(请注意,
$searchTerm
中缺少单引号):


只是一个猜测,但您可能遇到的一个问题是,
$searchTerm
周围有单引号。您正在搜索一个数字,但正在传递一个字符串

可能的修复(请注意,
$searchTerm
中缺少单引号):


只是一个猜测,但您可能遇到的一个问题是,
$searchTerm
周围有单引号。您正在搜索一个数字,但正在传递一个字符串

可能的修复(请注意,
$searchTerm
中缺少单引号):


列类型

请确保列类型正确。如果您将数据像这样用引号括起来,
'1234'
mysql将把数据解释为一个
字符串
,在不加引号的情况下写入,它将被解释为一个
整数

其中column=1234
integer
列上
WHERE column='1234'
varchar
列上

SQL注入

请在将变量直接传递到sql语句之前使用php
mysqli\u real\u escape\u string
函数,以防止
sql注入

Mysql与Mysqli函数的比较

mysql.*
函数在PHP
5.5.0
中不推荐使用,您应该使用
mysqli.*
函数来确保脚本在较新的PHP版本上工作

逻辑错误


确保要删除的数据存在于Mysql数据库中

列类型

请确保列类型正确。如果您将数据像这样用引号括起来,
'1234'
mysql将把数据解释为一个
字符串
,在不加引号的情况下写入,它将被解释为一个
整数

其中column=1234
integer
列上
WHERE column='1234'
varchar
列上

SQL注入

请在将变量直接传递到sql语句之前使用php
mysqli\u real\u escape\u string
函数,以防止
sql注入

Mysql与Mysqli函数的比较

mysql.*
函数在PHP
5.5.0
中不推荐使用,您应该使用
mysqli.*
函数来确保脚本在较新的PHP版本上工作

逻辑错误


确保要删除的数据存在于Mysql数据库中

列类型

请确保列类型正确。如果您将数据像这样用引号括起来,
'1234'
mysql将把数据解释为一个
字符串
,在不加引号的情况下写入,它将被解释为一个
整数

其中column=1234
integer
列上
WHERE column='1234'
varchar
列上

SQL注入

请在将变量直接传递到sql语句之前使用php
mysqli\u real\u escape\u string
函数,以防止
sql注入

Mysql与Mysqli函数的比较

mysql.*
函数在PHP
5.5.0
中不推荐使用,您应该使用
mysqli.*
函数来确保脚本在较新的PHP版本上工作

逻辑错误


确保要删除的数据存在于Mysql数据库中

列类型

请确保列类型正确。如果您将数据像这样用引号括起来,
'1234'
mysql将把数据解释为一个
字符串
,在不加引号的情况下写入,它将被解释为一个
整数

其中column=1234
integer
列上
WHERE column='1234'
varchar
列上

SQL注入

请在将变量直接传递到sql语句之前使用php
mysqli\u real\u escape\u string
函数,以防止
sql注入

Mysql与Mysqli函数的比较

mysql.*
函数在PHP
5.5.0
中不推荐使用,您应该使用
mysqli.*
函数来确保脚本在较新的PHP版本上工作

逻辑错误


确保要删除的数据存在于Mysql数据库中

如果数据库连接中存在错误,则在未设置数据库连接之前无法删除记录

//create a database connection
mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products");

Change above code to this 

$connection = mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products",$connection);

数据库连接中出现错误,在未设置数据库连接之前,无法删除记录

//create a database connection
mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products");

Change above code to this 

$connection = mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products",$connection);

数据库连接中出现错误,在未设置数据库连接之前,无法删除记录

//create a database connection
mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products");

Change above code to this 

$connection = mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products",$connection);

数据库连接中出现错误,在未设置数据库连接之前,无法删除记录

//create a database connection
mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products");

Change above code to this 

$connection = mysql_connect("localhost","root","") or die("Error:".mysql_error());
mysql_select_db("products",$connection);

不要使用
mysql.*
函数,它们是。BlueDog说的,也显示示例数据是数据库中的ProCode和ProNumber整数?您如何执行此脚本?URL是否以
?keyname结尾=?