2012-11-16 5 views
0
<script type="text/javascript"> 
    function drawVisualization() { 
     // Prepare the data 
    <?php while($row = mysql_fetch_array($result)){ ?> 
     var data = google.visualization.arrayToDataTable([ 
      ['Name', 'Gender', 'Age', 'Freqency'], 
      ['<?php echo $row['name']?>', 
      '<?php echo $row['gender']?>', 
      '<?php echo $row['age']?>', 
      '<?php echo $row['freq']?>'] 
     ]); 
    <?php ?> 
    } 

... 

</script> 

Cela fonctionne et un graphique apparaît, mais ne montre que la dernière entrée qui était dans la table de base de données, et il y a 4 entrys.Google Maps Mysql et php

Qu'est-ce que je fais mal? Merci

Répondre

4

Essayez-le:

<script type="text/javascript"> 
     function drawVisualization() { 
     // Prepare the data 

     var data = google.visualization.arrayToDataTable([ 
      ['Name', 'Gender', 'Age', 'Freqency'], 
      <?php while($row = mysql_fetch_array($result)){ ?> 
      ['<?php echo $row['name']?>' , '<?php echo $row['gender']?>', <?php echo $row['age']?>, <?php echo $row['freq']?>], 
      <?php } ?> 
     ]); 
+0

Cela a très bien fonctionné :) – pleaseDeleteMe

1

Vous construisez la structure de données incorrecte. Si vous avez une source d'affichage de la page générée, vous verriez

var data = google.visualization.arrayToDataTable(...); 
var data = google.visualization.arrayToDataTable(...); 
var data = google.visualization.arrayToDataTable(...); 
var data = google.visualization.arrayToDataTable(...); 

où chaque nouvelle ligne remplace/détruit la ligne précédente. Déplacer la ligne DEHORS var data de la boucle chercher:

var data = google.visualiation.arrayToDataTable([ 
['Name', 'Gender', 'Age', 'Freqency'], 
<?php 
while($row = mysql_fetch_array($result)) { 
    echo json_encode($row); 
} 
?> 

ce ne fonctionnera probablement pas, mais devrait vous donner l'idée générale. Notez l'utilisation de json_encode(). Vous ne l'utilisez pas dans votre code, et si le nom d'une personne (par exemple) contient un ', vous introduisez une erreur de syntaxe javascript et tuez le script entier. l'utilisation de json_encode() garantit que vous convertissez les données php en javascript syntaxiquement correct.

+0

Vous avez probablement raison! J'ai besoin d'étudier un peu ce json_encode! – pleaseDeleteMe

+0

Pourriez-vous me fournir des informations sur json? – pleaseDeleteMe

+0

http://json.org il n'y a pas grand-chose. –