当您需要一次将一个值与多个列进行匹配时,我在理解如何使用准备好的语句时遇到了一些麻烦。
换句话说,不是这样做:
$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)
既 '?' 表示相同的字符串。
尝试...
$stmt = $dbh->prepare("SELECT * FROM registry WHERE firstname = :name OR lastname = :name;");
$stmt->bindParam(':name', $name);
Run Code Online (Sandbox Code Playgroud)