我有这样的PHP / SQL查询:
return $this->db->query("SELECT * FROM candidates WHERE firstname = ".$searchParams->firstname." AND surname = ".$searchParams->firstname."");
并收到错误:
未找到专栏:1054未知专栏'但丁'在' where子句
然而,Dante列不在查询中(它是$searchParams->firstname
我在google上看到SQL读取的东西还原,所以从右到左,问题应该是叛逆或引号。我试图替换很多东西,但找不到如何解决这个问题的正确方法。
有人可以告诉我我做错了吗?
答案 0 :(得分:1)
尝试将输入包含在字符串中,如下所示:
return $this->db->query("SELECT * FROM candidates WHERE firstname = '".$searchParams->firstname."' AND surname = '".$searchParams->firstname."'");
您还在名字和姓氏中传递了相同的变量,请检查。
答案 1 :(得分:1)
您需要将您的值放在引号
中return $this->db->query("SELECT * FROM `candidates` WHERE `firstname` = '".$searchParams->firstname."' AND `surname` = '".$searchParams->firstname."'");