我用PDO写了一个SQL查询。数据库表有3个匹配查询的结果。但PDO只显示了一个结果。
我的代码就是这个
conn.php
function connect() {
$servername = "localhost";
$dbname = "guiding_db";
$username = "user";
$password = "pass";
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $conn;
}
_admin.php
include_once './conn.php';
function getStudentsRequests(){
$sql = "SELECT * FROM `user` WHERE signas = 'student' AND accept='0'";
$result = connect()->query($sql);
$out = $result->fetch(PDO::FETCH_ASSOC);
print_r($out);
return $out;
}
getStudentsRequests();
答案 0 :(得分:1)
PDOStatement::fetch()
仅加载一行。使用PDOStatement::fetchAll()
加载所有行(或使用while
循环):
$out = $result->fetchAll(PDO::FETCH_ASSOC);
答案 1 :(得分:0)
fetch
方法只返回查询中的一行。如果您需要,只需使用while
循环或fetchAll
方法
答案 2 :(得分:0)