php - php:sql错误“错误:带有查询的'where子句'中的未知列'RM'”
问题描述
我正在尝试创建一个 php 文件,该文件在我在 ubuntu 中使用 mysql 创建的数据库上进行搜索,但是当我运行查询时出现此错误,但我不明白为什么!当我打印错误时,我传递的数据是正确的,并且显示在字符串中!!!!!!
我认为这是一个语法错误,但我不知道它在哪里!!!!
这是我创建字符串并进行查询的摘录:
$sql_find = ("SELECT CITY, ADRESS, CAP FROM PEOPLE WHERE ID_PERSON = $idperson AND NAME_PERSON = $name AND SURNAME = $surname ") ;
print $sql_find;
$result= mysqli_query($connect,$sql_find) or die ("Error: ". mysqli_error($connect)." with query ");
传递的数据是我在应用程序中创建的人的姓名、姓氏和 id。例子:
$idperson=RM120463 $name = Mario $surname = Rossi
当我打印错误时,它还会打印我创建的选择:
从 ID_PERSON = RM120463 和 NAME_PERSON = 马里奥和姓氏 = 罗西的人中选择城市、地址、帽子
如果查询组成正确,为什么会给我错误?
谢谢只有你能帮助我!!!!
解决方案
你忘记了引号:
"SELECT CITY, ADRESS, CAP FROM PEOPLE WHERE ID_PERSON = '$idperson' AND NAME_PERSON = '$name' AND SURNAME = '$surname'"
顺便说一句,我看不到您的所有代码,但可能对 SQL 注入很敏感。看看您是否直接使用输入 ($var = $_POST['...']) 中的数据并替换为准备好的语句和绑定参数。
推荐阅读
- sql-server - 为什么 DSN(存储在网络上)只能在我的 PC 上工作,而对我们网络上的其他人不起作用?
- c# - FileResult 上出现“文件已损坏,无法打开”错误
- java - 验证用户字符串输入
- sql - 聚合函数内的 SQL 聚合函数
- python - Python:在 pyplot 图上绘制第二个 y 轴
- spring - 如何删除与另一个实体相关的实体
- java - Spring Thymeleaf - bean类错误的无效属性
- javascript - 如何使 JavaScript 变量完全不可变?
- javascript - 我正在尝试通过将参数传递给 fetch 调用来显示特定数据
- scala - 有什么方法可以捕获在 Spark 中使用通配符读取的多个镶木地板文件的输入文件名?