php - 密码登录

标签 php mysql codeigniter

我这里有一个 Codeigniter 登录系统,只是想知道我哪里出错了。这是我的代码:

查看

<?php
echo form_open('handyman/logIn');
echo form_label('Email: ','useremail');
echo form_input('useremail');
echo "<br />";
echo form_label('Password: ','userpassword');
echo form_input('userpassword');
echo "<br />";
echo form_submit('Logmein','Log In');
echo form_close();
?>

Controller

public function logIn(){
      $useremail=$this->input->post('useremail');
      $userpassword=md5($this->input->post('userpassword'));
      $this->load->model("HandymanModel");

      if($useremail && $userpassword && $this->HandymanModel->logInUser($useremail,$userpassword)){
        $data['msg']="Successfully Logged in!";
        $data['title']="Logged In";
        $this->load->view("header",$data);
        $this->load->view("confirmation",$data);
        $this->load->view("footer",$data);
      } else{
        $data['title']="Sign up / Log in";
        $this->load->view("header",$data);
        $this->load->view("page3", $data);
        $this->load->view("footer",$data);
      }
    }

型号

 function logInUser($useremail,$userpassword) { 
    $this->db->where('email',$useremail );
    $this->db->where( 'password', $userpassword );

    $login = $this->db->get()->result();

    if (is_array($login) && count($login) == 1) {
        return true;
    } else {
        return false;
    } 

我收到错误号:1064,请查看与您的 MySQL 服务器版本对应的手册,了解在“WHERE email”附近使用的正确语法。 = 'email@gmail.com' 和 password = 第 2 行的 '1a1dc91c9073'

谢谢

最佳答案

您缺少表名

$login = $this->db->get( )->result();
                        ^^here

尝试添加表名

$login = $this->db->get('your table name')->result();

$this->db->get();

关于php - 密码登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22121360/

相关文章:

php - 从特定用户 ID 抓取流

php - 如何在两个日期之间的时间选择一条记录

php - 通过将参数传递给 codeigniter 中的构造函数来加载库

php - Codeigniter 如何为用户的注册日期添加年份

php - 未声明的变量错误 1327

php - 如何设置下面的if isset语句

php - Memcached不保存生成的数据

php - 如何在子文件夹中设置索引页

mysql - 如何优化这个简单的 JOIN+ORDER BY 查询?

php - 喊播 xml 文件