PHP中的SQL搜索查询无法正常工作

尼克

有人可以解释为什么这行不通吗?我认为这部分是错误的,但我不知道如何解决。

$stmt = $pdo->prepare("SELECT * FROM locatie WHERE gebouw LIKE '%?%' 
AND ruimte LIKE '%?%'");
    $stmt->execute(array($gebouw_zoeken, $ruimte_zoeken));

问题是它没有显示查询结果。也没有任何错误代码。

    <table>
        <form action="index.php" method="post">

            Locatie zoeken:<br>
            <input placeholder="Gebouwnaam" type="text" name="gebouw_zoeken" 
>
            <br>
            <input placeholder="Ruimtenaam" type="text" name="ruimte_zoeken" 
>
            <br><br>
            <input  type="submit" name="submit_zoeken" value="Locatie 
zoeken" ><br>
        </form>
    </table><br><br>


    <?php
    if (isset($_POST["submit_zoeken"])) {
        $gebouw_zoeken = $_POST["gebouw_zoeken"];
        $ruimte_zoeken = $_POST["ruimte_zoeken"];
        $stmt = $pdo->prepare("SELECT * FROM locatie WHERE gebouw LIKE '%?%' 
AND ruimte LIKE '%?%'");
        $stmt->execute(array($gebouw_zoeken, $ruimte_zoeken));
        ?>
耶罗恩

您需要删除引号,并%execute()语句中将要绑定的字符串前后加上

$stmt = $pdo->prepare("SELECT * FROM locatie WHERE gebouw LIKE ? 
AND ruimte LIKE ?");
$stmt->execute(array('%' . $gebouw_zoeken . '%', '%' . $ruimte_zoeken . '%'));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章