phpmyadmin mysql语法错误 - 多条件条件

时间:2016-01-15 16:22:17

标签: php mysql database phpmyadmin

我的查询语法需要帮助。我正在使用phpmyadmin 4和mysql(不确定版本,但怀疑它是5.6。我的数据库有一个名为places的表,其中包含id, city, state, sightings and date列。我的网站通过$_POST["city"]和{{{}来获取用户的输入1}}。我希望将目击量增加1,其中城市和州的表项匹配。

使用phpmyadmin的SQL查询构建器,我使用地名而不是变量测试了可能的查询结构。以下查询成功:

$_POST["state"]

然后我点击了“创建PHP代码”,产生了以下内容:

UPDATE places SET sightings = sightings +1 WHERE city =  "Denver" AND state =  "Colorado"

我插入了这段代码,用地名取代了"UPDATE places SET sightings=sightings+1 WHERE city = \"Denver\" AND state = \"Colorado\""; $_POST["city"]声明的变量......

$_POST["state"]

并收到错误消息:

$result = cs50::query("UPDATE places SET sightings=sightings+1 WHERE city = \"{$city}\" AND state = \"{$state}\"");

我已经使用这行代码修补了几个小时而无法使其工作。它在phpmyadmin中工作的事实意味着它可行,我只是编码错了。

函数查询在我正在学习的课程CS50提供的自定义库中定义。我想知道函数是否有一些限制(如果感兴趣可以发布代码)或者我只是使用错误的语法???

欢迎任何帮助,如果我的问题令人困惑,道歉,这对我来说相对较新。

1 个答案:

答案 0 :(得分:0)

你试过了吗?

"UPDATE places SET sightings=sightings+1 WHERE city = 'Denver' AND state = 'Colorado'";

我总是发现单引号比双引号更正确,即使它们被转义。