Php mysql中包含dots扩展的Where子句
我有一个问题,就是从数据库中选择值。我有这样一个where子句:Php mysql中包含dots扩展的Where子句,php,mysql,sql,mysql-error-1064,Php,Mysql,Sql,Mysql Error 1064,我有一个问题,就是从数据库中选择值。我有这样一个where子句: $query = 'SELECT * FROM liquid WHERE Id = '.$id.' AND ( picone = tiger-1477927129.jpg OR pictwo = tiger-1477927129.jpg OR picthree =
$query = 'SELECT * FROM liquid
WHERE Id = '.$id.'
AND (
picone = tiger-1477927129.jpg OR
pictwo = tiger-1477927129.jpg
OR picthree = tiger-1477927129.jpg
' . 'picfour = tiger-1477927129.jpg
OR picfive = tiger-1477927129.jpg
OR picsix = tiger-1477927129.jpg
)';
问题是文件扩展名前面有点,所以sql不会执行这个操作。你知道我怎么解决这个问题吗
谢谢
Lee在值周围使用引号,即
image='image.jpg'
,您需要在PHP中转义字符串的引号
$query = 'SELECT * FROM liquid WHERE
Id = '.$id.'
AND (
picone = \'tiger-1477927129.jpg\'
OR pictwo = \'tiger-1477927129.jpg\'
OR picthree = \'tiger-1477927129.jpg\'
OR picfour = \'tiger-1477927129.jpg\'
OR picfive = \'tiger-1477927129.jpg\'
OR picsix = \'tiger-1477927129.jpg\'
)
';
看起来糟透了。你知道MySQL需要字符串常量的(单)引号吗?你需要学习基本的SQL语法。。。如果你认为这些点是个问题,想象一下那些
-
导致了什么…可以用双引号封装,然后可以删除串联和转义。谢谢大家。:)