Bonjour à tous,
J'ai fais énormément de recherches sur le net, et je ne trouve pas de réponse a mon problème.
Du coup, j'espère que je ne fais pas de doublon.
mon souci:
Je récupère un XML en PHP,
je stocke dans des variables tout ce dont j'ai besoin, via un foreach, et une condition.
Ces variables je les mets dans un tableau.
Je sors de mon foreach, et j'aimerais envoyer ce tableau dans mon script ajax, via "echo json_encode();
sur mon navigateur, il m'imprime bien mon tableau en JSON mais dans ma console il est NULL ! pourquoi ??
mon php:
Mon JS:
Modifié par Deblandero (17 Jul 2018 - 09:34)
J'ai fais énormément de recherches sur le net, et je ne trouve pas de réponse a mon problème.
Du coup, j'espère que je ne fais pas de doublon.
mon souci:
Je récupère un XML en PHP,
je stocke dans des variables tout ce dont j'ai besoin, via un foreach, et une condition.
Ces variables je les mets dans un tableau.
Je sors de mon foreach, et j'aimerais envoyer ce tableau dans mon script ajax, via "echo json_encode();
sur mon navigateur, il m'imprime bien mon tableau en JSON mais dans ma console il est NULL ! pourquoi ??
mon php:
<?php
//création d'un objet DomDocument (class PHP)
$dom = new DomDocument();
//Chargement du fichier XML
$dom->load('xxxx');
//Recherche des values suivant le nom de la balise xml
$matches = $dom->getElementsByTagName('match');
//Affichage des points
foreach ($matches as $match) {
$id_match = !empty($_POST['id_match']) ? $_POST['id_match'] : NULL;
//Condition pour le matchin de l'id du match
if ($id_match == $match->getElementsByTagName("matchid")->item(0)->nodeValue AND $match->getElementsByTagName("matchstatus")->item(0)->nodeValue == "(in progress)") {
//Stockage des joueurs
$player1 = !empty($match->getElementsByTagName("player1")->item(0)->nodeValue) ? $match->getElementsByTagName("player1")->item(0)->nodeValue : "Inconnu" ;
//$player1_2 = (!empty($match->getElementsByTagName("team1p2")->item(0)->nodeValue)) ? $match->getElementsByTagName("team1p2")->item(0)->nodeValue : "Inconnu";
$player2 = !empty($match->getElementsByTagName("player2")->item(0)->nodeValue) ? $match->getElementsByTagName("player2")->item(0)->nodeValue : "Inconnu" ;
//$player2_2 = (!empty($match->getElementsByTagName("team2p2")->item(0)->nodeValue)) ? $match->getElementsByTagName("team2p2")->item(0)->nodeValue : "Inconnu" ;
//Mise en session des data's + Caractère spéciaux a supprimer -> ,
$player1 = str_replace(",","",$player1);
$player2 = str_replace(",","",$player2);
//Stockage des ponts de set
$set1_1 = $match->getElementsByTagName("set11")->item(0)->nodeValue;
$set1_2 = $match->getElementsByTagName("set12")->item(0)->nodeValue;
$set2_1 = !empty($match->getElementsByTagName("set21")->item(0)->nodeValue) ? $match->getElementsByTagName("set21")->item(0)->nodeValue : "";
$set2_2 = !empty($match->getElementsByTagName("set22")->item(0)->nodeValue) ? $match->getElementsByTagName("set22")->item(0)->nodeValue : "";
$set3_1 = !empty($match->getElementsByTagName("set31")->item(0)->nodeValue) ? $match->getElementsByTagName("set31")->item(0)->nodeValue : "";
$set3_2 = !empty($match->getElementsByTagName("set32")->item(0)->nodeValue) ? $match->getElementsByTagName("set32")->item(0)->nodeValue : "";
$set4_1 = !empty($match->getElementsByTagName("set41")->item(0)->nodeValue) ? $match->getElementsByTagName("set41")->item(0)->nodeValue : "";
$set4_2 = !empty($match->getElementsByTagName("set42")->item(0)->nodeValue) ? $match->getElementsByTagName("set42")->item(0)->nodeValue : "";
$set5_1 = !empty($match->getElementsByTagName("set51")->item(0)->nodeValue) ? $match->getElementsByTagName("set51")->item(0)->nodeValue : "";
$set5_2 = !empty($match->getElementsByTagName("set52")->item(0)->nodeValue) ? $match->getElementsByTagName("set52")->item(0)->nodeValue : "";
//stockage des points de jeux
$set1g = !empty($match->getElementsByTagName("game1")->item(0)->nodeValue) ? $match->getElementsByTagName("game1")->item(0)->nodeValue : "0" ;
$set2g = !empty($match->getElementsByTagName("game2")->item(0)->nodeValue) ? $match->getElementsByTagName("game2")->item(0)->nodeValue : "0" ;
//stockage des points de tiebreak
$set1_1_tb = !empty($match->getElementsByTagName("set1tb")->item(0)->nodeValue) ? $match->getElementsByTagName("set1tb")->item(0)->nodeValue : "" ;
$set1_2_tb = !empty($match->getElementsByTagName("set2tb")->item(0)->nodeValue) ? $match->getElementsByTagName("set2tb")->item(0)->nodeValue : "" ;
$scoreTeam1 = " ".$set1_1." ".$set2_1." ".$set3_1." ".$set4_1." ".$set5_1." ".$set1g;
$scoreTeam2 = " ".$set1_2." ".$set2_2." ".$set3_2." ".$set4_2." ".$set5_2." ".$set2g;
//Balle de service
$balle = "<figure class='balle'></figure>";
$balle1 = "";
$balle2 = "";
//service
$match->getElementsByTagName("player2serve")->item(0)->nodeValue == "1" ? $balle1 = $balle : $balle1 = "";
$match->getElementsByTagName("player2serve")->item(0)->nodeValue == "2" ? $balle2 = $balle: $balle2 = "";
//stockage des données & encodage en JSON pour le traitement en AJAX
$data = array(
'player1' => $player1,
'player2' => $player2
);
}//end condition matching de l'id du match
}//end foreach
echo json_encode($data);
?>
Mon JS:
setInterval(function(){
$.ajax({
url:"./display.php",
type: "GET",
dataType: "json",
success: function (res) {
console.log(res);
},
error: function(){
console.log("error");
}
})
}, 1000)
Modifié par Deblandero (17 Jul 2018 - 09:34)