函数PDO不返回任何内容


function PDO return nothing?

我的项目使用PDO,所以我不知道为什么我的函数什么都不返回。。。

function getuser($username) {
    require 'database.php';
    $rep = $bdd->prepare("SELECT * FROM membre where login =:user");
    $rep =$bdd->execute(
        array(
            'user'=>$username
            ));
        while($row = $rep->fetch(PDO::FETCH_OBJ)) {
            //$userid = $row->id;
            //$usermail = $row->email;
            echo $row->id;
        }
}

和用法:

$uname = $_SESSION['uname'];
echo $uname;
//result: kate
echo getuser($uname);
//result:

我不知道为什么它不起作用?

您有一个错误。代码应为:

$rep = $bdd->prepare("SELECT * FROM membre where login =:user");
$rep->execute(
    array(
        'user'=>$username
        ));

基本上,$rep就是statement。你prepare()一个语句,然后执行它。现在你在错误的对象上运行execute。