您好我尝试使用给定的第一个字母从PDO中的表中提取名称并按ASC排序但获取空数组。
include('core/engine/login.php');
$con = new PDO('mysql:host=localhost;dbname=database', $dbuser, $dbpassword);
$row = $con->prepare("SELECT title FROM ".$dbprefix."anime WHERE title= :title: ORDER BY title ASC");
$row->bindParam(':title', $aniprefix, PDO::PARAM_STR);
$row->execute();
$results = $row->fetchAll(PDO::FETCH_COLUMN);
} catch(PDOException $ex) {
}
由于
答案 0 :(得分:1)
要指出的几个问题。
在SQL文本中,绑定参数占位符以冒号开头,但不以冒号结尾。
等式比较运算符( =
)进行精确比较。要查找部分匹配,您可以使用LIKE
比较运算符。例如,要查找title
的第一个字符为'T'
的所有行,您可以使用谓词,例如 title LIKE 'T%'
。请注意,在LIKE
的上下文中,'%'
是一个匹配零,一个或多个任何字符的通配符。
答案 1 :(得分:0)
$row = $con->prepare("SELECT title FROM ".$dbprefix."anime WHERE title LIKE :title ORDER BY title ASC");
$row->bindParam(':title', $aniprefix.'%', PDO::PARAM_STR);