[AJAX] Mettre en oeuvre ajax
Bonjour j'essaye juste d'afficher les valeur d'une base de données via ajax voici mon code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
function ajax()
{
var xhr=null;
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
//on définit l'appel de la fonction au retour serveur
xhr.onreadystatechange = function() { alert_ajax(xhr); };
//on appelle le fichier reponse.txt
xhr.open("GET", "Examens.php", true);
alert("ajax1");
xhr.send(null);
}
function alert_ajax(xhr)
{
var docXML= xhr.responseXML;
var items = docXML.getElementsByTagName("id")
alert("nb element "+items.length);
//on fait juste une boucle sur chaque element "id" de chaque examen
for (i=0;i<items.length;i++)
{
alert (items.item(i).firstChild.data);
}
} |
le premier alert m'affiche 0 et le deuxième ne s'affiche jamais ce qui est plutôt normal vu la valeur du premier alert mais je ne comprend pas pourquoi je n'ai aucune valeur pourtant mon fichier php contient des valeur via la fonction getStudies() qui retourne un tableau de tableau voici mon fichier php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| <?php
include_once 'database.php';
header('Content-Type: text/xml');
echo "<?xml version=\"1.0\"?>\n";
echo "<examen>\n";
// main
// connect to MySQL
$database = "medi";//urldecode($_POST["formDatabase"]);
$user = "root";//urldecode($_POST["formUsername"]);
$password = "toto"; //urldecode($_POST["formPassword"]);
//////////$antispaminput = urldecode($_POST["formAntiSpam"]); // Ramin
$dbcon = new MyDatabase($hostname, $database, $user, $password);
if ($dbcon) {
echo 'connexion réussie';
}
else {
echo 'connexion impossible...'.mysql_error();
}
$rows = array();// tableau de tableau
$rows=$dbcon->getStudies();// methode qui me renvoie un tableau de tableau de valeur
/*foreach ($rows as $i)
{
echo ($i[0] . " et " . $i[1] . " + ".$i[2] . " et " . $i[3] . " + ". $i[4] . " et " . $i[5] . " + ".$i[6] ."<br />");
}*/
//On boucle sur le resultat
foreach ($rows as $i)
{
echo "<id>{" . $i[0] . "}</id>\n";
echo "<date>{" . $i[3] . "}</date>\n";
echo "<heure>" . $i[4] . "</heure>\n";
echo "<description>" . $i[8] . "</description>\n";
}
echo "</examen>\n";
?> |
je me suis inspiré de ce code http://gael-donat.developpez.com/web/intro-ajax/#LIII et lorsque je lance mon fichier php j'ai cette erreur
Code:
1 2 3 4
| Erreur d'analyse XML : mal formé
Emplacement : http://localhost/Nouvelle%20maquette/Examens.php
Numéro de ligne 3, Colonne 12 :connexion russie<id>{1.3.51.0.7.633922247.633920090617.6339085113}</id>
-----------^ |
merci