我試圖檢查用戶電子郵件是否存在或不在CodeIgniter中。與CodeIgniter的AJAX請求不斷給予禁止的錯誤
這裏是笨的控制器我使用的:
public function check_email() {
$email= $this->input->post('email');
echo "error";
if($email)
{
$this->load->model('auth/register_model');
$return_array = $this->register_model->check_member($this->input->post('email'));
if($return_array == true)
{
$json['success'] = 'false' ;
$json['exit'] = 'true';
die(json_encode($json,JSON_PRETTY_PRINT));
}
else
{
$json['success'] = 'true' ;
$json['exit'] = 'false';
die(json_encode($json,JSON_PRETTY_PRINT));
}
}
}
這裏是我現在用的是笨的模型:
public function check_member($email) {
$this->db->select('user_id')->from(DB_PREFIX .'publisher')->where('email', $email);
$q = $this->db->get();
if ($q->num_rows() == 1) {
return true;
}
return false;
}
下面是笨的AJAX我現在用:
function checkAvailability() {
if($("#email").val()) {
$(".showLiveEmail").addClass("fa fa-refresh fa-spin");
$(".showEmail").removeClass("has-success");
jQuery.ajax({
url: "auth/register/check_email",
data:'email='+$("#email").val(),
type: "POST",
success:function(data){
if(data.success=="true")
{
$(".showLiveEmail").removeClass("fa fa-refresh fa-spin");
$(".showEmail").removeClass("has-error")
$(".showLiveEmail").removeClass("fa fa-times");
$(".showLiveEmail").addClass("fa fa-check");
$(".showEmail").addClass("has-success");
}
else
{
}
},
error:function(){}
});
}
else
{
$(".showLiveEmail").addClass("fa fa-times");
$(".showEmail").removeClass("has-success")
$(".showEmail").addClass("has-error")
}
}
任何人都可以幫我嗎?我剛開始CodeIgniter,現在我正面臨着這個問題。
如果你通過AJAX做後,你需要通過一個CSRF令牌或者說改變它獲得方法,如果你不想 – Roljhon
嘿,你能告訴我如何通過csrf? – Rohan
這裏http://stackoverflow.com/questions/7348383/codeigniter-ajax-csrf-problem – Roljhon