PDO查询bindValue和%什么都不返回

时间:2014-12-07 03:26:55

标签: php mysql pdo substring

我不明白为什么我的查询没有返回结果

<?php
    include "connection.php";

    $stmt = $db->prepare('SELECT * FROM my_tb WHERE column1 = :par1 ');
    $stmt->bindValue(':par1', '%'.$_POST['submit1'].'%');
    $stmt->execute();

    while($row = $stmt->fetch())
        {
            print_r($row[0]); 
            print_r($row[1]);
            print_r($row[2]);
        };  
?>

当我将'%'.$_POST['submit1'].'%'更改为$_POST['submit1']时,其工作正常。 我正在搜索子字符串

1 个答案:

答案 0 :(得分:5)

如果您需要通配符匹配,那么您需要查找LIKE个查询,而不是=个比较。

SELECT * FROM my_tb WHERE column1 LIKE :par1