PHP PDO始终只提供一个结果

时间:2016-06-16 11:32:07

标签: php mysql pdo

我用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();

3 个答案:

答案 0 :(得分:1)

PDOStatement::fetch()仅加载一行。使用PDOStatement::fetchAll()加载所有行(或使用while循环):

$out = $result->fetchAll(PDO::FETCH_ASSOC);

答案 1 :(得分:0)

fetch方法只返回查询中的一行。如果您需要,只需使用while循环或fetchAll方法

答案 2 :(得分:0)

fetch方法返回下一个结果(一)。如果您希望获得所有结果 - 请使用fetchAll

等方法