我下载了一些利用PDO的代码,我不太熟悉 - 我通常使用mysqli_语句,但我也在尝试学习如何使用PDO。
在下面的代码段中,用户开始在字段中键入零件号,系统从数据库的quotePartNumber
字段中返回与他们正在键入的内容相似的任何值。
$keyword = '%'.$_POST['keyword'].'%';
$sql = "SELECT DISTINCT quotePartNumber from allparts where quotePartNumber LIKE (:keyword) LIMIT 0,10";
$query = $pdo->prepare($sql);
$query->bindParam(':keyword', $keyword, PDO::PARAM_STR);
$query->execute();
$list = $query->fetchAll();
foreach ($list as $rs) {
// put in bold the written text
$country_name = str_replace(strtoupper($_POST['keyword']), '<b>'.$_POST['keyword'].'</b>', $rs['quotePartNumber']);
// add new option
echo '<li onclick="set_mainPartNumber('''.str_replace("'", "''", $rs['quotePartNumber']).''')">'.$country_name.'</li>';
}
这非常有效...我已经玩了大约两个小时的代码,试图弄清楚如何让它也拉supplier
字段,这也是在同一张表中。
当用户开始输入部件号时,我还希望返回与同一行的部件号匹配的供应商。 我不知道该怎么做...
有什么想法吗?
它应该像更改 select 语句一样简单。
$sql = "SELECT DISTINCT quotePartNumber, supplier from allparts where quotePartNumber LIKE (:keyword) LIMIT 0,10";
然后,您可以通过更新 echo 语句来显示它。
echo '<li onclick="set_mainPartNumber('''.str_replace("'", "''", $rs['quotePartNumber']).''')">'.$country_name.' - '.$rs['supplier'].'</li>';