2015-04-16 1 views
0

Le PHP fonctionne correctement lorsqu'il est appelé directement dans le navigateur, mais le ajax.responseText ne contient aucun objet distribué par la boucle While.Ajax Demande non retournée Echo de boucle PHP

$result = $mysqli->query("SELECT * FROM `Dienstplan` WHERE MONTH(Datum) = '$Monat'"); 
while ($row = $result->fetch_assoc()) { 
     $Datum = $row['Datum']; 
     $Datum = strtotime($Datum); 
     $Datum = date('d.m.Y',$Datum);   
     $Tag = $row['Tag']; 
     $Dienst = $row['Dienst']; 

     //echo '<tr><td>'.$Tag.' '.$Datum.' '.$Dienst.'</td></tr>'; 
     echo $Tag.' '.$Datum.' '.$Dienst.'';   
} 
echo "This is a Test!"; 

Le ajax.responseText ne contient que la dernière echo après la boucle While. Mais quand j'appelle le script PHP directement dans mon navigateur, je peux voir clairement toutes les données fournies par la boucle. Pour une raison quelconque, il n'est pas contenu dans la réponse Ajax.

Voici le code Ajax:

var ajax; 
ajax = new XMLHttpRequest(); 
ajax.open("GET","../php/FTL_Month_2.php",true); 
ajax.send(); 

ajax.onreadystatechange=function(){ 
     if (ajax.readyState==4 && ajax.status==200){ 
      //alert(ajax.responseText); 
      document.getElementById("DataList").innerHTML=ajax.responseText; 
     } 
} 
+0

Veuillez indiquer clairement quelle est votre question. – Bludzee

+0

Etes-vous sûr que la requête renvoie des lignes? – dbinns66

+0

Avez-vous regardé la requête/réponse dans la console du navigateur? –

Répondre

0

En tant que meilleure pratique, vous devriez obtenir toutes les données que vous souhaitez revenir, et le stocker dans une variable. après cela, hors de la boucle, renvoyer cette variable.

+0

Je l'ai fait comme vous avez suggéré, mais la réponse est vide, tandis que le navigateur dit que ce n'est pas: http://blaues-team.de/php/FTL_Month_2.php – CMX

+0

pouvez-vous montrer le code ajax bloc? –

+0

Oui, s'il vous plaît voir ma question, je l'ai ajouté tout à l'heure. – CMX