Ich möchte Daten aus der Datenbank abrufen, indem Sie Daten überprüfen. Ich sende Daten als JSON-Datei, aber es funktioniert nicht. Im Netzwerk werden keine Daten angezeigt, die reaktiviert werden können. Obwohl ich ohne Ajax Daten aus der Datenbank abrufen kann. wenn ich dataType ändere: 'json' trifft es nicht den cotroller. wenn diese Änderung zu "HTML" dann ausgelöst Alarm().Ajax kann Daten in Codezeichen nicht abrufen
This is my ajax code
$(document).ready(function() {
$('#ret_pass').click(function(e) {
e.preventDefault();
var data = {
u_mail : $('#email').val(),
u_ques : $("#security").val(),
};
console.log(data);
url = $('#ret_form').attr('action');
//console.log(url);
$.ajax({
type:'POST',
url:url,
data: data,
dataType : 'json',
success: function(res){
alert(res.msg);//says undefined
console.log(res.msg);
},
error: function(res) {
alert(res.msg);
alert('error');//also says error!
},
});
})
})
This is controller code
public function ret_pass()
\t {
header('Content-Type: application/json', true);
if($this->input->is_ajax_request()) {
$u_mail = $this->input->post('email');
$u_ques = $this->input->post('security');
$cond = array(
'u_mail' => $u_mail,
'u_ques' => $u_ques
);
$query = $this->db->where($cond)->get('tbl_user');
$checker = $query->result_array();
//if (count($checker) > 0) {
if (!empty($checker)) {
//var_dump($results);
//echo json_encode ($results);
die(json_encode(array('success' => true, 'msg' => $checker)));
} else {
echo "bad search";
die(json_encode(array('success' => true, 'msg' => 'invalid search')));
}
}
}
tun, dass nur Ajax Fehlerfunktion ausgelöst. das bedeutet, dass es keine Daten zurücksendet. Fügen Sie in der Fehlerfunktion –
hinzu: {alert (res.responseText)} und sehen Sie, was der Fehler ist – crazyglasses