我有一个代码OR无法正常工作
try {
$keyword = trim($_GET["keyword"]);
if ($keyword <> "" ) {
$sql = "SELECT * FROM tbl_contacts WHERE 1 AND "
. " (first_name OR last_name LIKE :keyword) ORDER BY first_name ";
$stmt = $DB->prepare($sql);
$stmt->bindValue(":keyword", $keyword."%");
Run Code Online (Sandbox Code Playgroud)
它只搜索last_name而不是搜索first_name.
我需要它应该搜索last_name和first_name.
正确的代码是:
$sql = "SELECT * FROM tbl_contacts WHERE 1 AND "
. " (first_name LIKE :keyword1 OR last_name LIKE :keyword2) ORDER BY first_name ";
$stmt = $DB->prepare($sql);
$stmt->bindValue(":keyword1", $keyword."%");
$stmt->bindValue(":keyword2", $keyword."%");
Run Code Online (Sandbox Code Playgroud)
请注意,你不能有超过一个占位符相同的名称.这就是我使用keyword1和keyword2绑定相同值的原因.
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |