Le codage suivant est le résultat d’une autre page. Echo php
user_list.php:
$myarray=array();
...
...
$myjson = json_encode($myarray);
echo $myuser->searchUser($myjson);
et le résultat de html est:
[{"userID":"1","username":"\u9ec3\u9ec3\u9ec3",
"sex":"F","password":"1bbd886460827015e5d605ed44252251",
"emails":"[email protected]","regdate":"2015-11-03 00:00:00",
"dob":"1994-11-02","educationID":"6","positionID":"1",
"home":"12341234","mobile":"21800000","address":"AC2 5\/F Rm5501","grade":"Y1","status":"0","office_tel":"41234123",
"inviter":null,"inviter_relation":null,"believe":"0",
"remark":null}]
Comme je le sais, voici un tableau, pas un objet. Alors, comment puis-je obtenir ces données dans une autre page comme celle-ci?
$(".edituser").click(function () {
var user = $(this).data("id");
$.ajax({
url:"user_list.php",
data:"userID="+user,
type : "POST",
dataType: "json",
success:function(data){
console.log(data);
},
error:function(xhr){
alert('Ajax request fail');
}
});
});
Comment obtenir les données en ajax? THX
Il existe deux méthodes pour accéder à l'objet.
1. Réponse Ajax.
$.ajax({
url:"your_file.php",
type : "POST",
data : your_data,
dataType: "json",
success:function(data){
// Retrieve the object
var result = data[0];
// Grab username from the object
console.log(result['username']);
},
error:function(xhr){
alert('Ajax request fail');
}
});
2. Script côté serveur
$yourArray = array();
$yourJson = json_encode($yourArray);
$userData = $yourJson->searchUser($yourJson);
$jsonData = json_decode($userData);
// Ouput the inner contents
echo json_encode($jsonData[0]);
Modifier le format dans la méthode suivante.
$myuser->searchUser($myjson)
OR
Utilisez l'index 0 pour obtenir l'objet JSON.
resultData[0] //will return JSON object
Je recommanderai de changer le format dans la méthode PHP. Bonne chance!