2017-01-28 2 views
0

Im neueren in Ajax und Codeigniter .. Ich entwickle Ajax Login-Formular. Ich erstelle View-Controller und Modul-Formular. Wenn ich im Anmeldeformular auf den Absenden-Button klicke, funktioniert das nicht. Ich habe in der console.log() eingecheckt, es wird kein Fehler angezeigt. Kann jemand pls meine problem..Thanks im Voraus lösen ..Login-Seite in Ajax und Codeigniter

Das ist meine Ansicht page.Ajaxlogin.php

<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <!-- Meta tag for IE --> 
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> 
<title>Helen Flaghrity Charitable Society</title> 
<meta name="keywords" content=""> 
<meta name="description" content=""> 
<link href="<?php echo base_url("assets/css/bootstrap.css");?>" rel="stylesheet"> 
<link href="<?php echo base_url("assets/css/admin.css");?>" rel="stylesheet"> 
<link href="<?php echo base_url("assets/css/font-awesome.min.css");?>" rel="stylesheet"> 
<style> 
</style> 
</head> 
<body> 
<div class="container-fluid login"> 
    <div class="col-md-4"></div> 
    <div class="col-md-4"> 
     <div id="logerror"></div> 
     <div class="panel panel-default"> 
     <div class="panel-heading"> 
      <h3 class="panel-title">Admin</h3> 
     </div> 
     <div class="panel-body"> 
     <form action="" method="post" id="frm_login"> 
     <div class="form-group"> 
      <label for="adminname">Admin Name</label> 
      <input type="text" class="form-control" name="adminname" id="adminname" placeholder="Admin Name" required="required"> 
     </div> 
     <div class="form-group"> 
      <label for="adminpassword">Password</label> 
      <input type="password" class="form-control" name="adminpassword" id="adminpassword" placeholder="Password" required="required"> 
     </div> 
     <button type="submit" class="btn btn-primary" id="submit">Submit</button> 
     </form> 
     </div> 
     </div> 
    </div> 
    <div class="col-md-4"> 

    </div><!-- script queries--> 
</div> 
<script src="<?php echo base_url("assets/js/jquery.min.js");?>"></script> 
<script src="<?php echo base_url("assets/js/bootstrap.min.js");?>"></script> 
<script src="<?php echo base_url("assets/js/script.js");?>"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script> 
    $(document).ready(function(){ 
    $("#submit").click(function(){ 
     $.ajax({ 
      url: "<?php echo base_url('Ajaxlogin/Admin_login');?>", 
      type: "post", 
      data: $("form").serialize(), 
      cache: false, 
      dataType:'json', 
      success: function (data) { 
      if (data== 'true') 
      { 
       alert("success"); 
      } 
      else{ 
       alert("Invalid Userid or password"); 
      } 
     } 
     }); 
    }); 
}); 
</script> 
</body> 
</html> 

Dies ist mein Controller Seite.

Ajaxlogin.php
<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class Ajaxlogin extends CI_Controller { 

    public function __construct() 
    { 
     parent::__construct(); 
     $this->load->model('Ajaxmodel'); 
    } 
    public function index() 
    { 

      $this->load->view('Ajaxlogin'); 

    } 
    public function Admin_login(){ 
     $name = $this->input->post('adminname'); 
     $password= $this->input->post('adminpassword'); 
     $result=$this->Ajaxmodel->login($name,$password); 
     if ($result == TRUE) { 
      echo "true"; 
     } 
    } 

} 

Das ist mein Modell Seite Ajaxmodel.php

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class Ajaxmodel extends CI_Model{ 
    public function login($name,$password) { 
     $name=$name; 
     $password=md5($password); 
     $this->db->select('*'); 
     $this->db->from('admin'); 
     $this->db->where('name',$name); 
     $this->db->where('password',$password); 
     $this->db->limit(1); 
     $query = $this->db->get(); 
     if ($query->num_rows() == 1) { 
     return true; 
     } else { 
     return false; 
     } 
    } 
} 
+0

Versuchen Fehler zu fangen (in Ajax): Fehler: function (XHR, textStatus, errorThrown) { alert ('Es ist ein Fehler, siehe Konsole'); console.log ("xhr", xhr); console.log ("TextStatus", TextStatus); console.log ("errorThrown", errorThrown); } – DannyThunder

Antwort

0

ich denke, sollten Sie Standardaktion auf Formular verhindern.

$(document).ready(function(){ 
    $("form").on('submit',function(e){ 
     e.preventDefault(); 
     $.ajax({ 
      url: "<?php echo base_url('Ajaxlogin/Admin_login');?>", 
      type: "post", 
      data: $("form").serialize(), 
      cache: false, 
      dataType:'json', 
      success: function (data) { 
      if (data== 'true') 
      { 
       alert("success"); 
      } 
      else{ 
       alert("Invalid Userid or password"); 
      } 
     } 
     }); 
     return false; 
    }); 
});