Php 将两个输入与数据库数据进行比较:错误
我试图将两个输入值与MySQL表中同一行的两个值进行比较。 但我总是收到一条错误消息。这个代码有什么问题?(只需一个输入即可正常工作)Php 将两个输入与数据库数据进行比较:错误,php,mysql,Php,Mysql,我试图将两个输入值与MySQL表中同一行的两个值进行比较。 但我总是收到一条错误消息。这个代码有什么问题?(只需一个输入即可正常工作) 您已经创建了一个带有空格的列名。所以在SQL中,它只考虑数字作为列名。你能做的就是。用后引号(`)括起列名。或从列名中删除空格 希望这对您有所帮助。:) 尽管SQL中允许在列名中使用空格,但其原因(在您的示例中)是因为列名Numero Cedula包含空格: v -- space
您已经创建了一个带有空格的列名。所以在SQL中,它只考虑数字作为列名。你能做的就是。用后引号(`)括起列名。或从列名中删除空格
希望这对您有所帮助。:) 尽管SQL中允许在列名中使用空格,但其原因(在您的示例中)是因为列名
Numero Cedula
包含空格:
v -- space v -- space
$sql1 = "SELECT Numero Cedula FROM Teste WHERE Numero Cedula=$numero_cedula
AND Chave=$codigo";
将列名换行为反勾号时,将其更改为以下内容:
$sql1 = "SELECT `Numero Cedula` FROM Teste WHERE `Numero Cedula`=$numero_cedula
AND Chave=$codigo";
另外,确保$numero_cedula
和$codigo
都是整数,并且列也是int
类型
如果它们不是,那么两者都需要用引号括起来
即:
$sql1 = "SELECT `Numero Cedula` FROM Teste WHERE `Numero Cedula`='$numero_cedula'
AND Chave='$codigo'";
将或die(mysqli\u error($con))
添加到mysqli\u query()
中,这将在SQL中显示错误
- 您还可以使用下划线将数据库中的列重命名为
Numero\u Cedula
Numero
和
或一个Numero-Cedula
但是,使用此方法会受到影响。使用,或
洞察力: 还要确保表单元素已命名 例如:
name=“numero_cedula”
和name=“codigo”
将错误报告添加到文件顶部,这将有助于查找错误
error_reporting(E_ALL);
ini_set('display_errors', 1);
旁注:错误报告只应在暂存阶段进行,而不应在生产阶段进行。@getlost,这一错误始终意味着我的代码中存在语法错误。更具体地说:内部服务器错误服务器遇到内部错误或配置错误,无法完成您的请求。@manuelmourato请参阅下文。
error_reporting(E_ALL);
ini_set('display_errors', 1);