我有一個登錄模式窗體,這是正確的驗證,但我有一個小問題,它是nt返回虛假陳述登錄模式,如無效的用戶或密碼。而在迴應中,我看到錯誤的密碼輸入和所有的HTML。但是沒有消息在窗體上打印。codeigniter表單登錄驗證使用模式
這裏是我的看法:
<a href="#" data-toggle="modal" data-target="#loginmodel">Sign In/Order</a> |
<div class="modal fade" id="loginmodel" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content martop105">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title text_center" id="exampleModalLabel">Login</h4>
</div>
<div class="modal-body">
<form >
<div class="row margin0 text_center">
<div class=" col-md-12 col-sm-12 col-xs-12" >
<input type="email" id="email" placeholder="Email*" class="form-control">
</div>
<br>
<div class="col-md-12 col-sm-12 col-xs-12 martop20">
<input type="Password" id="password" placeholder="Password*" class="form-control">
</div>
<br>
<div class="checkbox col-md-12 col-sm-12 col-xs-12 pull-left martop20" >
<label class="pull-left"><input name="remember" type="checkbox" value="Remember Me"> Remember Me</label>
</div>
<div class=" col-md-12 col-sm-12 col-xs-12 pull-left text_blue martop20" >
<a href="#" class="text_blue pull-left">
Forgot password?
</a>
</div>
</div>
<br>
<div class="row margin0 ">
<button type="button" onclick="save();" class="btn btn-info btn-lg marleft20 active">Login</button>
</div>
</form>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
<script>
function save(){
// alert('ddsfsf');
var email=$('#email').val();
var password=$('#password').val();
// alert(email);
//alert(gender);
$.ajax({
url: '<?php echo base_url();?>Choice/login',
type: 'POST',
data: {
email: email,
password:password
},
dataType: 'text',
success: function(data) {
// console.log(data);
// alert(data);
// alert("Succesfully Saved");
// location.reload(false);
}
});
}
</script>
控制器
class Choice extends CI_Controller {
function __construct(){
parent::__construct();
$this->load->library('form_validation');
$this->load->helper('form');
$this->load->database();
$this->load->model('login_model','login_model');
$this->load->library('session');
$this->load->library('eway');
$this->load->model('Catering_model','catering_model');
// $this->load->helper('utility');
$this->load->helper('url');
}
public function login()
{
$this->form_validation->set_rules('email','Email','required|valid_email|is_unique[choicelunchuser.email]');
$this->form_validation->set_rules('password','Password','required|callback_basisdata_cek');
if($this->form_validation->run()==false)
{
$this->load->view('ChoiceLaunch/index');
}
else{
if($this->session->userdata('logged_in'))
{
$session_data = $this->session->userdata('logged_in');
$data['id'] = $session_data['id'];
$data['email'] = $session_data['email'];
$this->load->view('ChoiceLaunch/index',$data);
}
else{
$this->load->view('ChoiceLaunch/index');
}
}
}
public function basisdata_cek()
{
$username= $this->input->post('email');
$password=$this->input->post('password');
// echo $username.' '.$password;
$result=$this->login_model->loginemail($username,$password);
// echo ('fsf'.$result[0]);
// echo ('fsf'.$result[1]);
if($result)
{
$sess_array = array();
foreach ($result as $row)
{
$sess_array = $arrayName = array('id' => $row->id,'email'=> $row->email);
$this->session->set_userdata('logged_in',$sess_array);
// $ci = & get_instance();
//$ci->session->set_userdata("logged_in",$sess_array);
}
return true;
}
else{
//echo $username.' '.$password;
$this->form_validation->set_message('basisdata_cek','Invalid user or password');
return false;
}
}
}
<?php echo validation_errors(); ?> – Alish
我放置bt仍然顯示響應不佈局。我有什麼想法嗎? – user3162878