J'ai un petit souci avec un chat que je suis entrain de coder.
J'ai une page 'chat.php', qui me renvoie un tableau JSON avec des données :
$reponse = $bdd->query('SELECT id, pseudo, message, DATE_FORMAT(date_message, \'le %d/%m/%y à %h:%i:%s\') AS date FROM minichat_1 ORDER BY ID LIMIT 0, 100');
$messages = array();
while($donnees = $reponse->fetch()){
$messages[$donnees['id']] = array(
'id' => $donnees['id'],
'pseudo' => $donnees['pseudo'],
'message' => $donnees['message'],
'date' => $donnees['date']
);
}
$reponse->closeCursor();
$messages_json = json_encode($messages);
?>
<script type="text/javascript">
var messages_js = <?php print $messages_json; ?> ;
for(i=0 ; i < messages_js.length ; i++) {
alert(messages_js[i]);
}
</script>
Et de l'autre côté, j'ai ma page 'index.php' qui est supposée le récupérer (ce qu'elle fait). Le souci, c'est qu'elle n'arrive pas à le parser pour en faire un tableau JS.
En gros, quand je n'utilise pas JSON.parse(), la page me renvoie la longueur de la chaîne json, ce qui est normal. Mais quand je l'utilise, la console me dit "SyntaxError: JSON.parse: unexpected character at line 1 column 13 of the JSON data"
Merci beaucoup d'avance à celle/celui qui m'enlèvera cette fière chandelle du pied !
Premièrement je ne comprends pas exactement ton code ici, pourquoi utiliser du Javascript pour afficher tes données ? Je pense qu'un simple `echo $message_json` devrait suffire à te renvoyer les bonnes données.
Ensuite essaie d'utiliser console.log() pour débugger et afficher le résultat de JSON.parse(donnes)
Merci beaucoup, c'était ça et un artéfact d'une ancienne ligne de code oublié négligemment !
Conversion JSON -> tableau JS
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.