PHP LIKE查询一直显示为空


PHP LIKE query keeps turning up empty

由于某种原因,我的PHP PDO sql搜索没有任何结果。我试着在我的网站上安装某种搜索引擎,但我似乎什么也找不到。到目前为止,我已经尝试了很多不同的解决方案,但搜索结果一直是空的,即使给出了正确的参数。$find变量由用户输入,$field变量是一个下拉列表,用户可以从中选择要搜索的内容,它返回的值等于数据库中列的名称。

            $find = strtoupper($_POST['find']);
            $find = "%" . $find . "%";
            $field = $_POST['field'];
            $qry = $conn->prepare("SELECT * FROM '"MovieDB'" WHERE upper(:field) LIKE :find%");
            $qry->bindParam(':find', $find, PDO::PARAM_STR, 16);
            $qry->bindParam(':field',$field, PDO::PARAM_STR,16);
            $qry->execute();
            $results = $qry->fetchAll();

PDO不允许绑定字段名或表名。

我建议将字段值直接注入到查询字符串中。
一定要对其进行清理以避免SQL注入!

$qry = $conn->prepare("SELECT * FROM '"MovieDB'"
                       WHERE upper(`".$field_santizied."`) LIKE :find");
$qry->bindParam(':find', $find, PDO::PARAM_STR, 16);

如何使用PDO动态构建查询

php.net引用无法绑定表名:
69304年http://us3.php.net/manual/en/book.pdo.php