Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL数据库条目赢得';你不能装吗?_Php_Mysql_Codeigniter - Fatal编程技术网

Php MySQL数据库条目赢得';你不能装吗?

Php MySQL数据库条目赢得';你不能装吗?,php,mysql,codeigniter,Php,Mysql,Codeigniter,这来自一个登录表单,其中电子邮件和密码作为收件人字段: echo form_open('main/login_validation'); echo "<P>Email: </br>"; echo form_input('email',$this->input->post('email')); echo "</P>"; echo "<P>Password: </br>"; echo form_password('passw

这来自一个登录表单,其中电子邮件和密码作为收件人字段:

echo form_open('main/login_validation');

echo "<P>Email: </br>";
echo form_input('email',$this->input->post('email'));
echo "</P>";

echo "<P>Password: </br>";
echo form_password('password');
echo "</P>";

echo "<P>";

$img_path = base_url()."imgs/log_in_0.png";

echo '<input type="image" src="'.$img_path.'">';
echo "</P>";

echo form_close();
Callback将其发送到:

public function validate_credentials(){
    $this->load->model('model_users');

    $salt = $this->model_users->get_salt();

    if($this->model_users->can_log_in($salt)){

        return true;
    }else{

    $this->form_validation->set_message('validate_credentials', 'Incorrect Email/Password.');
    return false;
    }

}
当调用get_salt()时,它会从模型中加载:

public function get_salt(){

    $this->db->where('email', $this->input->post('email'));


    $query = $this->db->get('users');

    if($query){

        $row = $query->row();

        $salt =  $row->salt;

        return $salt;
    }else{
        echo 'failed salt';

    }

}
两天前,同样的代码单词fine,现在它在以下方面给出了一个非对象错误:

$salt =  $row->salt;
无法正确加载查询,我使用codeigniter
函数$this->input->post('email')
从post数组回送了正确的电子邮件


但是当我打印查询时,它返回一个空的查询对象,但是电子邮件在用户数据库表中(在email字段和所有内容中),我已检查,几天前,我正使用同一个帐户进行测试,所以我得到了错误,因为我输入了错误的密码,它测试了用户是否存在

测试用户是否存在的代码:


在接受的答案中

表“用户”中是否确实存在字段“salt”?没有大写字母?是的,我发现了问题,我的电子邮件中有一个字母错了,所以没有条目,我看了又看,从来没有注意到一个字母的差异。我花了一个小时试图找到它,请至少阅读该电子邮件50次,并且不要注册完成建议-您可能需要单独检查您的系统中是否存在该电子邮件。这样,如果有人注册了,但他们不小心输入了错误的密码-你可以告诉他们,嘿,我们认识你,但密码不正确。如果我这样做,我会为黑客输入我的数据表,一半的谜题会让你知道你解决了它,相反,我将实施一个电子邮件系统,它将通知一个人,如果他们的帐户在没有正确密码的情况下被尝试访问3次或3次以上,询问是否是他们,他们是否想更改密码,以及在站点上设置密码重设选项。然后,如果他们说不是他们,可以记录(试图访问该帐户的人)的ip和任何其他身份信息的副本,甚至可以禁止该ip进入该网站
$salt =  $row->salt;