1

我有这个代码

$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; 查询失败。

问题是什么?

4

2 回答 2

4

由于您正在使用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>';
}
于 2012-09-09T15:58:53.717 回答
0

$market 是一个字符串。所以你应该把它放在'

类似于 ... where marker='".$marker."'";

于 2012-09-09T15:57:38.833 回答