duanlin6989 2014-05-24 13:50
浏览 55

如何在codeigniter中更改密码并使用jquery验证字段

my view page is password.php:

<form>
    oldpassword<input type="password" name="oldpassword" id="oldpassword"/><br>

    newpassword<input type="password" name="newpassword" id="newpassword"/><br>

    confirmpassword<input type="password" name="confirmpassword" id="confirmpassword"/><br>

    <input type="submit" name="submit" value="changepassword"/>
</form>

What code should be put in controller page.password must be MD5.

  • 写回答

1条回答 默认 最新

  • doufan3958 2014-05-24 16:22
    关注

    There is no jQuery used in my script, you can change the submit function via jQuery if you want.... I did it without jQuery

    public function saveData(){
        $this->form_validation->set_rules ( "oldpassword", "Old Password", "trim|required|xss_clean|callback_passwordCheck" );
        $this->form_validation->set_rules ( "newpassword", "New Password", "trim|required|matches[repassword]|xss_clean|min_length[5]" );
        $this->form_validation->set_rules ( "repassword", "Confirm Password", "trim|required|xss_clean" );
        if ($this->form_validation->run () == false) {
            $this->updatePassword ();
        }else{
            $md5pass = $this->input->post('newpassword');
            $data ['username'] = $this->session->userdata ( 'username' );
            $data ['password'] = md5($md5pass);
    
            $this->load->model('loginModel');
            $this->loginModel->updatePassword('username',$data ['username'],$data);
    
            //var_dump($data); 
        }
    }
    
    public function passwordCheck(){
        $username = $this->session->userdata ( 'username' );
        $md5pass = $this->input->post('oldpassword');
        $this->load->model('loginModel');
        $results = $this->loginModel->getOldPassword($username);
        $currentPass = $results->password;
    
        if($md5pass==$currentPass){
            return true;
        }else{
            $this->form_validation->set_message('passwordCheck', 'Invalid current password, please try again');
            return false;
        }
    }
    

    <?php echo form_open("loginController/savedata",'class="cmxform form-horizontal tasi-form" id="commentForm"')?>

                <div class="form-group">
                  <label class="col-sm-2 control-label">Old Password</label>
                  <div class="col-sm-10">
                    <?=form_input($fldoldPassword) ?>
                  </div>
                </div>
                <div class="form-group">
                  <label class="col-sm-2 control-label">New Password</label>
                  <div class="col-sm-10">
                    <?=form_input($fldNewPassword) ?>
                  </div>
                </div>
                <div class="form-group">
                  <label class="col-sm-2 control-label">Confirm Password</label>
                  <div class="col-sm-10">
                    <?=form_input($fldRePassword) ?>
                  </div>
                </div>
                <div class="form-group">
                  <label class="col-sm-2 control-label">&nbsp;</label>
                  <div class="col-sm-10">
                    <button class="btn btn-danger" type="submit">Save</button>
                    <button class="btn btn-default" type="button">Cancel</button>
                  </div>
                </div>
                <div class="form-group">
                  <label class="col-sm-2 control-label">&nbsp;</label>
                  <div class="col-sm-10">
                    <?=validation_errors('<p class="alert alert-block alert-danger fade in">'); ?>
                  </div>
                </div>
              </form>
    
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算
  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据