在codeigniter中重置密码

时间:2017-02-13 06:55:24

标签: mysql codeigniter

我正在尝试更改数据库中的密码,但它无法正常工作..正确打印密码..但它没有保存在数据库中..

这是我的控制器:

public function resetpwd($ user_id = NULL) {

  //echo $user_id;
$this->load->helper('form');
$data['msg']=array();
if($this->input->post())
  {
   $user_id= $this->input->post('user_id');
  //echo $id; 
   $this->LoginModel->resetpwd($this->input->post(),$user_id);
//redirect(base_url('resetpwd/'.$id));
  }
  $this->load->view('Admin/resetpwd',$data);

}

这是我的模特:

    function resetpwd($post='',$user_id) 
{

    $data=array('password'=>$post['password']);
    $this->db->where('user_id', $user_id);
    $this->db->update('users', $data);
    return true;
    print_r($data);

}

请帮我怎么做

谢谢

4 个答案:

答案 0 :(得分:2)

请尝试此代码。

function resetpwd($post=array(),$user_id) 

您已将post数组传递给resetpwd函数,将数组转换为数组变量是可以接受的。 只更改一行它将起作用。

谢谢。

答案 1 :(得分:0)

您只需使用帖子方法extract($_POST)在模型页面中获取密码,即可获得新密码,如$data=array('password'=>$password)

您的模型是 -

    function resetpwd($user_id) 
{
    extract($_POST);
    $data=array('password'=>$password);
    $this->db->where('user_id', $user_id);
    $this->db->update('users', $data);
    return true;
    //print_r($data);

}

答案 2 :(得分:0)

请尝试此代码。

控制器:

class Adminuser extends CI_Controller {

public function __construct()
  {

    parent::__construct();
    $this->load->model('loginModel'); 
    $this->load->helper('form');

  }

  public function resetpwd() 
{

$data['msg']=array();
if($this->input->post())
  {
   $user_id= $this->input->post('user_id');

   $this->loginModel->change_password($this->input->post('password'),$user_id);

  }
  $this->load->view('Admin/resetpwd',$data);
}

}

您的模型功能:

public function change_password($password,$user_id) 
{

    $data=array('password'=>$password);
    $this->db->where('user_id', $user_id);

    if($this->db->update('users', $data))
    {
        return true;
    }
    else{
        return false;
    } 
}

答案 3 :(得分:0)

应用此代码

function resetpwd($post, $user_id) 
{
    $data=array('password'=>$post['password']);
    $this->db->where('user_id', $user_id);
    $this->db->update('users', $data);
    return true;

}