数据库有查询结果但pdo查询结果为空?

代码如下:

<?php
$userid=$_POST["user"];
$compassword=$_POST["psw"];

$servername="localhost";
$user="root";
$psw="iiiiiii";
    $con=new PDO("mysql:host=$servername;dbname:mydb",$user,$psw);
    $con->query("set names utf8");
    echo $userid."<br />";//有结果输出
    echo $compassword."<br />";//有结果输出
    $sql="use mydb;select * from admin where userid='$userid';";
    $check=$con->query($sql);
    $numcount=$check->rowCount();
    if($numcount==0){
        echo '用户不存在';
    }else{
        echo '该用户存在';
    }
?>

运行后页面一直显示“用户不存在”,即$numcount为0;
但是我在数据库里面查询的时候是能够查到记录的:

[1]:

请问是什么原因导致rowCount()得到的结果跟实际结果不一样?该怎么解决?

阅读 4.7k
1 个回答

代码写错惹。

$con=new PDO("mysql:host=$servername;dbname:mydb",$user,$psw);

改成

$con=new PDO("mysql:host=$servername;dbname=mydb",$user,$psw);

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题