JQUERY AJAX récupération données

yohann3396 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
bonjour,

Je possède un code en AJAX qui envoie des données dans une page PHP qui change les données. J'aimerai récupérer les données changer et les mettre dans une fonction

setInterval(function(){
$.ajax({
url: "bougeperso.php?x=<?php echo $donnees['x']; ?>&y=<?php echo $donnees['y']; ?>&id=<?php echo $donnees['id']; ?>",
type: "GET",
data: "x="+x,
data: "y="+y,
data: "id="+id,
context: document.body,
success: function(data){
ppmap.moveObject('+id+', '+x+', +y+, true, 500);
}


});

}, 2000);


J'ai fait comme ceci pour le moment mais ça ,ne fonctionne pas.
Donc j'envoi les données X, Y et ID qui sont modifiés dans le PHP et j'aimerai les récupérer pour les mettre dans PPMAP move object sachant que celà s'actualise toutes les 2secondeS.
Merci de votre aide

4 réponses

Utilisateur anonyme
 
dnas ton code php, il suffit de retourner un tableau contenant tes avriables de retour, et d'apellez ta fonction en callback (ce que tu fais, a priori)


<?php
$res['x']=2;
$res['y']=3;

return res;

?>
0
Utilisateur anonyme
 
0
yohann3396 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 
<?php
include('include_co.php');


$c=mysql_query('SELECT y FROM membre WHERE id="'.$_REQUEST['id'].'"');
list($posy)=mysql_fetch_row($c);

$b=mysql_query('SELECT x FROM membre WHERE id="'.$_REQUEST['id'].'"');
list($posx)=mysql_fetch_row($b);


if(!isset($_REQUEST['x']) && !isset($_REQUEST['y']) && !isset($_REQUEST['id']) ) {
$retour = 1;
}else{
if(is_array($_REQUEST['y']) && is_array($_REQUEST['x']) && is_array($_REQUEST['id'])) {

$posx = $_REQUEST['x'];
$posy = $_REQUEST['y'];
$id = $_REQUEST['id'];







}else{

$posx = $_REQUEST['x'];
$posy = $_REQUEST['y'];
$id = $_REQUEST['id'];



}
}

?>


Ca c'est mon code PHP

En théorie, je recois les valeurs X et Y et ID , je modifie les valeurs X et Y et je renvoie!
Dans la théorie ça fonctionne en pratique moyen, qu'est qui cloche?
Ci quelqu'un peut m'aiguiller ce serai sympa :)
0
Utilisateur anonyme
 
tu dois afficher les donnes avec un echo ou un print pour que Ajax les récupères. Vue que tu as trois valeurs différentes, l'idéal est le Json ou le XML pour pouvoir mieux travailler avec ajax depuis la partie front.
0
yohann3396 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 
PHP :
<?php
header('Content-type: application/json');
session_start();
include('include_co.php');


$reponse = mysql_query('SELECT * FROM membre WHERE connecte="1" && login!="'.$_SESSION['login'].'"');
while ($donnees = mysql_fetch_array($reponse) ) {



$donnees = array(


"id" => $donnees['id'],
"x" => $donnees['x'],
"y" => $donnees['y']
);
}


return json_encode($donnees);


?>

JS :



var refresh12 = function() {
$.ajax({
url: "bougeperso.php",
dataType: "JSON",
success:
function(retour){


var json = jQuery.parseJSON(retour);
$('bougeperso').html(ppmap.moveObject(json.id, json.x, json.y, true, 500)) }
});

}

setInterval(refresh12, 1000)

Qu'est qui colle pas ? ?
0
Utilisateur anonyme
 
Salut,

je n'ai pas testé ton code. Si ta requête PHP est fonctionnelle,il faut afficher Json :

echo json_encode($donnees);

mysql_* n'existe plus et ton utilisation des requêtes est dangereuse.
0
yohann3396 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 
Quand j'affiche Json ça me met " false", ça peut venir d'ou ?

Je sais il faut que je passe en PDO ^^
0
Utilisateur anonyme
 
si tu fais un var_dump($donnees) tu obtiens quoi ?
0
yohann3396 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 
J'obtiens ceci :
<pre class='xdebug-var-dump' dir='ltr'><small>boolean</small> <font color='#75507b'>false</font>
</pre>
0
Utilisateur anonyme
 
Salut,

je surpris du résultat que donne var_dump(), même si tu semble utiliser xdebug que je ne connais que de nom.

Normalement tu récupère quoi dans ta base de donnée ?
Et tu tu sur que ta requête fonctionne ?

si elle fonctionne essaie cette méthode pour en savoir plus :

http://www.lephpfacile.com/manuel-php/function.json-last-error.php
0
yohann3396 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 
Je récupère des informations sur le joueur mais c'est bon il y avait un problème dans le tableau, je reçois maintenant : {"id":17,"x":7,"y":7}

Le soucis vient apparemment du javascript maintenant, on ça me met que Json est null, il ne reçoit donc pas les valeurs.

var refresh12 = function() {
$.ajax({
url: "bougeperso.php",
dataType: "JSON",
success:
function(retour){


var json = jQuery.parseJSON(retour);
$('bougeperso').html(ppmap.moveObject(json.id, json.x, json.y, true, 500)) }
});

}

setInterval(refresh12, 1000)
0