在数据库条目php上更改密码哈希

在数据库条目php上更改密码哈希,php,mysql,database,codeigniter,hash,Php,Mysql,Database,Codeigniter,Hash,使用密码\u散列并散列密码并将其存储在数据库中,它将不会通过密码\u验证。我试着测试函数,只是在数据库外运行一个单词,效果很好。而且,如果我散列一个单词,然后手动将其放入数据库,那么它在登录时工作正常。但是,当我通过我的代码/SQL将散列输入到我的数据库中时……很明显,在这一点上,散列发生了一些事情,从我所能说的来看,它无法使用。我不知道是什么。我查了一下我的桌子…看起来不错,Varchar255 utf8\u bin。 我正在使用codeigniter框架。Codeigniter会逃逸它的插入

使用密码\u散列并散列密码并将其存储在数据库中,它将不会通过密码\u验证。我试着测试函数,只是在数据库外运行一个单词,效果很好。而且,如果我散列一个单词,然后手动将其放入数据库,那么它在登录时工作正常。但是,当我通过我的代码/SQL将散列输入到我的数据库中时……很明显,在这一点上,散列发生了一些事情,从我所能说的来看,它无法使用。我不知道是什么。我查了一下我的桌子…看起来不错,Varchar255 utf8\u bin。 我正在使用codeigniter框架。Codeigniter会逃逸它的插入,除非您使用下面这样的集合并使用FALSE,否则无法工作

function register($data){
    $this->db->set($data, FALSE);
    $this->db->set('word_of_passing', $data['word_of_passing'], FALSE);
    $this->db->insert('cred');
}
这不起作用-

function register($data){
    $this->db->query('INSERT INTO cred (user_name, word_of_passing) VALUES ("'.$data['user_name'].'", "'.$data['word_of_passing'].'")');
}
function register($data){
    $this->db->insert('cred', $data);       
}
这不起作用-

function register($data){
    $this->db->query('INSERT INTO cred (user_name, word_of_passing) VALUES ("'.$data['user_name'].'", "'.$data['word_of_passing'].'")');
}
function register($data){
    $this->db->insert('cred', $data);       
}
最后,我试着完全脱离codeigniter,但没有成功-

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "moviedb";

    // Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
} 
$sql = "INSERT INTO cred (user_name, word_of_passing) VALUES ('".$data['user_name']."', '".$data['word_of_passing']."')";

    if ($conn->query($sql) === TRUE) {
        echo "New record created successfully";
    } else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();

我所能想到的就是它必须是我数据库中的一个设置或其他什么?我真的被难住了

若您在数据库中插入问题,我建议您添加类似于控制器的模型函数,如您输入模型名称和函数

class Lindsdata extends CI_Modle{
public function password(){
 $data = array(
          'user_name' => $this->input->post('username'), 
          'word_of_passing' => $this->input->post('password'),    
        );

   $query = $this->db->insert('cred',$data);
   if($query)
    {
     return true;
    }
   else
   {
    return false;
   }
} 
}
像这样进入控制器

   $this->load->model('lindsdata');
    $return_data = $this->lindsdata->password();