Where子句在mysql

时间:2016-10-31 21:22:05

标签: 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 = tiger-1477927129.jpg 
                    ' . 'picfour = tiger-1477927129.jpg 
                    OR picfive = tiger-1477927129.jpg
                    OR picsix = tiger-1477927129.jpg
          )';

问题是我在文件扩展名之前有点,所以sql不执行此操作。你知道我怎么解决这个问题?

由于 利

1 个答案:

答案 0 :(得分:2)

在值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\'
    )
';