2016-06-03 8 views
-1

Ich möchte nur etwas Rückgabewert von der Ajax Daten Post erhalten. Ich bin nicht sicher, warum ich nicht etwas in Erfolg zurückbekomme. Bitte den Code überprüfen und mir sagen, wo ich falsch binKann nicht die Rückkehr von PHP in Ajax Anfrage

Mein jquery Code

$("#btnlogin").click(function(){ 

    var email = $("#emaillog").val(); 
    var password = $("#passlog").val(); 
    console.log('test'); 
    /* $.ajax({ 
     url: 'home2/login_user', 
     //data: {'title': title}, change this to send js object 
     type: "post", 
     data: 'email=' + email+'&password='+password, 
     success: function(output) { 
      url:"home2/login_user", 
      data: 'email=' + email+'&password='+password, 
      alert(output); 
     } 
    });*/ 

    $.ajax ({ 
     url:"home2/login_user", 
     type: "post", 
     dataType: 'json', 
     data: 'email=' + email+'&password='+password, 
     success: function (data) { 
      $.each(data, function(key, value) { 
       console.log(key,'--',value); 
      }); 
       //iterate here the object 
     } 
    }); 
}); 

Mein PHP-Code

public function Login_user() 
    { 
     $email = $this->input->post('email'); 
     $password = $this->input->post('password'); 
     $data['result'] = $this->Home_model->login_to_user($email,$password); 
     echo json_encode ($data['result']);  


    } 

In PHP-Code ich das Ergebnis aber in in jquery Echo. Ich bin kein Ergebnis in Erfolg bekommen

Dank

+0

Mögliche Duplikat [Wie kehre ich die Antwort von ein asynchroner Anruf?] (http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call) – RRK

+0

Was bekommen Sie, wenn Sie 'console.log (Daten) 'im Erfolgsrückruf? –

+0

Ich habe nichts in der Konsole log es geht nicht in Erfolg .. @MartinGottweis –

Antwort

0

gut, zuerst, Sie übergeben die Parameter, wie es ein Get-Anforderung war, und seine nicht.

Ändern Sie die Art, wie Sie an etwas wie das übergeben.

$.ajax ({ 
     url:"home2/login_user", 
     type: "post", 
     dataType: 'json', 
     data: { field1: "hello", field2 : "hello2"}, 
     success: function (data) { 
      $.each(data, function(key, value) { 
       console.log(key,'--',value); 
      }); 
       //iterate here the object 
     } 
    }); 
1

Verwendung parseJSON

var obj = jQuery.parseJSON(data); 
console.log(obj.key); 
1

Der Grund ist, weil Ihr Code-Backend nicht in der Lage sein scheinen, die Benutzernamen und Passwort Parameter zu finden. Sie sind ihnen die falsche Art und Weise an dieser Codezeile vorbei:

data: 'email=' + email+'&password='+password,

Ersetzen Sie die Zeichenfolge mit einem JavaScript-Objekt:

data: { email: email, password: password }

Verwandte Themen