[AJAX] Lecture d'un fichier json par ajax
Bonjour,
Je travail actuellement sur une application qui se base sur l’API GoogleMap pour géolocaliser des adresse sur la carte, Je localise les adresses retournées par le fichier PHP qui me génère un fichier JSON...
jusqu'à maintenant tout vas a merveille...
Mais lorsque j’effectue des changements sur mon fichier PHP (changement de la requête SQL, changement des données a affichées…) ca commence a foiré l’application se bloque et me signale une erreur (erreur de syntaxe) cependant cette erreur ne s’affiche que lorsque je modifie le contenue du fichier PHP lorsque je le restore comme il était ca ne me signiale rien du tout :( je pense que l'erreur se trouve lors de l'ouverture du JSON pour le lire mais je n'arrive pas a la detectée:cry:
voila la fonction ajax ou on me signial l'erreur
//la fonction qui charge les données apartir du fichier json.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| function init() {
handleResize();
xmlhttp = GXmlHttp.create();
xmlhttp.open('GET', 'json.php', true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status != 200)
setAlertText('Impossible d\'acéder aux données de la carte.');
else
{
var responseText = xmlhttp.responseText;
markers = eval(responseText);// l'erreur est signialié a cette ligne là
if (!markers)
setAlertText('Erreur de données.');
else
initData();
}
}
}
xmlhttp.send(null);
} |
et là c'est le code PHP :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| $query = "SELECT * FROM test WHERE 1";
$result = mysql_query($query);
if (!$result) {die("Requète invalide. Erreur : " . mysql_error());}
$json = array("[");
$tab = "\t{";
while ($row = @mysql_fetch_assoc($result)){
$json[] = $tab;
$json[] = "\t\t'latitude': ".$row["latitude"].",";
$json[] = "\t\t'longitude': ".$row["longitude"].",";
$json[] = "\t\t'type': '".utf8_encode(addSlashes($row["type"]))."',";
$json[] = "\t\t'nom': '".utf8_encode(addSlashes($row["nom"]))."',";
$json[] = "\t\t'adresse': '".utf8_encode(addSlashes($row["adresse"]))."',";
$json[] = "\t\t'codepostal': '".$row["codepostal"]."',";
$json[] = "\t\t'ville': '".utf8_encode(addSlashes($row["ville"]))."'";
$json[] = "\t}";
$tab = "\t\t,\t{";
}
$json[] = "];";
$jsonFinal = join("\n", $json);
echo $jsonFinal; |
vraiment je suis bloqué là je n'arrive pas a detecter l'erreur meme si le code me semble correct:(
alors si vous avez des idées qui peuvent m'aider prierre de me contacter
Merci d'avance
cordialement