我正在使用CodeIgniter制作用户身份验证页面


I am making a user authentication page using CodeIgniter

问题是查询没有从数据库检索正确的值,而是没有检索任何值。每当我试图打印保存结果的变量时,它都是空白的。我附加了一部分代码

这是模型 中的代码
$db = new PDO('mysql:host=localhost;dbname=login;charset=utf8', 'root', 'learningit');
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $db->prepare("SELECT id FROM members WHERE userid='$username' AND password='$password'");  
    $stmt->execute();  
    $var=$stmt->fetch(PDO::FETCH_ASSOC);
    foreach ((array)$var as $row) {
    print_r($row);
    return $row;

,这是控制器部分

public function check()
    {
        $this->load->model('test_model');
        $result=$this->test_model->data_check();
        if($result[0]==1)
        {
          $this->call();
        }
        else if($result[0]==2)
        {
            $this->call1();
        }
        else if($result[0]==3)
        {
            $this->call2();
        }
        else
        {   
            echo "Invalid id/password";
        }   
    }

您的模型中可能缺少$username和$password声明

$username = $this->input->post('username'); // change this depends in your input 
$password = $this->input->post('password'); // change this depends in your input