WHERE 子句与 PDO 混淆

Gre*_*reg 3 php mysql pdo

当您需要一次将一个值与多个列进行匹配时,我在理解如何使用准备好的语句时遇到了一些麻烦。

换句话说,不是这样做:

$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
$stmt->bindParam(1, $name); 
Run Code Online (Sandbox Code Playgroud)

我想这样做:

$stmt = $dbh->prepare("SELECT * FROM REGISTRY where firstname = ? or lastname = ?");
Run Code Online (Sandbox Code Playgroud)

既 '?' 表示相同的字符串。

Jon*_*nno 6

尝试...

$stmt = $dbh->prepare("SELECT * FROM registry WHERE firstname = :name OR lastname = :name;");
$stmt->bindParam(':name', $name); 
Run Code Online (Sandbox Code Playgroud)