我这里有密码
我不知道为什么它什么也不显示
function konek() {
return new PDO('mysql:host=localhost;dbname=payroll;port=3306', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
}
$pdo = konek();
$keyword = $_POST['keyword'];
$sql = "SELECT * FROM karyawan WHERE noreg LIKE '%:keyword%' OR nama LIKE '%:keyword%' ORDER BY noreg ASC LIMIT 0, 10";
$query = $pdo->prepare($sql);
$query->bindParam(':keyword', $keyword, PDO::PARAM_STR);
$query->execute();
$daftar = $query->fetchAll();
foreach ($daftar as $kar) {
echo '<li>'.$kar['noreg'].'||'.$kar['nama'].'</li>';
}
?>
我的代码有问题吗?
最佳答案
请尝试更改使用准备好的语句的方式,以在bindParam方法中包含%,而不是查询:
$sql = "SELECT * FROM karyawan WHERE noreg LIKE :keyword OR nama LIKE :keyword ORDER BY noreg ASC LIMIT 0, 10";
然后
$query->bindParam(':keyword', '%'.$keyword.'%', PDO::PARAM_STR);
关于php - pdo与mysql不显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34737577/