我创建了一个简单的表单,用于搜索输入的用户名与数据库中的用户名匹配,并显示其名字和姓氏。我在显示错误时遇到问题。当输入的用户名与数据库中的用户名不匹配时,它应该显示为null或什么都不显示。我尝试在else语句中回显null,但它仍然显示错误消息。
<?php
$db = new PDO('mysql:host=127.0.0.1;dbname=sample;charset=utf8', 'root', '');
if(isset($_POST['search'])) {
$search = $_POST['search'];
$query = $db->prepare("SELECT * FROM search WHERE username=:username");
$query->execute(['username' => $search]);
$row = $query->fetch(PDO::FETCH_OBJ);
if(count($row)) {
echo $row->firstname . ' ' . $row->lastname;
} else {
echo null;
}
}
答案 0 :(得分:0)
您应该执行类似
的操作 if(count($row) > 0) {
echo $row->firstname . ' ' . $row->lastname;
} else {
echo null;
}