mysql - 当我使用 where 时查询失败

标签 mysql sql pdo

我有这个代码

$marker = 'werkz';
$sql = "SELECT name, marker FROM sidebar";
$q = $db->query($sql);
$q->setFetchMode(PDO::FETCH_ASSOC);
while ($r = $q->fetch()) {
    echo'<option>' . $r[name] . '</option>';
    }

它有效,但是当我添加 WHERE marker = $maker;查询失败。

问题是什么?

最佳答案

因为您正在使用 PDO ,传参的时候这样写。

$marker = 'werkz';
$sql = "SELECT name, marker FROM sidebar WHERE marker = ?";
$q = $db->query($sql);
$q->bindParam(1, $maker);
$q->setFetchMode(PDO::FETCH_ASSOC);
while ($r = $q->fetch()) {
    echo'<option>' . $r[name] . '</option>';
}

关于mysql - 当我使用 where 时查询失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12340573/

相关文章:

mysql - 在这种情况下是否绝对需要多对多关系?

sql - 我可以使用sql批量复制在同一服务器内复制数据吗?

mysql - 使用 Laravel 5 设置 Mariadb

PHP 数据对象 (PDO) 示例

MySQL 与 XML 的标记机制

c# - 通过 HTTP 与 MySQL 数据库交互

mysql - SQL,如何从 mysql 中选择一个包含 "/"的列

c# - 如何执行 find() 并返回找到的实体之前和之后的实体?

sql - 如何在 SQL Server 2008 中的链接 Firebird 服务器上执行存储过程

php - 在 PHP 中处理动态数量的输入