Bonjour à tous,
Je débute en ajax et je ne vois pas le bout de mon test.
L'exercice est a priori facile : j'ai une page web, je saisis mon identifiant dans un champ de formulaire et mon nom de famille doit apparaître dans le champ suivant, et ce, une fois que mon focus a quitté le champ de l'identifiant.
Je me suis inspirée d'un bouquin pour cet essai mais ce n'est pas très concluant. Voici ma page identifier.html :
Et voici mon code chercherClient.php simplifié au maximum... Vous allez me dire que l'utilité de lui passer une paramètre se discute mais j'espère pouvoir un jour tester avec mon login passé en paramètre !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
46
47
48
49
50
51
52
53
54 <html> <head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" /> <title>Livraison Pizza Prestissima</title> <script language="javascript" type="text/javascript"> var requete = null; try { requete = new XMLHttpRequest(); } catch (essaimicrosoft) { try { requete = new ActiveXObject("Msxml2.XMLHTTP"); } catch (autremicrosoft) { try { requete = new ActiveXObject("Microsoft.XMLHTTP"); } catch (echec) { requete = null; } } } if (requete == null) alert("Impossible de créer l'objet requête!"); function getInfosClient() { var login = document.getElementById("login").value; var url = "chercherClient.php?login=" + login; requete.open("GET", url, true); requete.onreadystatechange = actualiserPage; requete.send(null); } function actualiserPage() { if (requete.readyState == 4) { /* Obtenir la réponse du serveur */ var nomUser = requete.responseText; /* Mettre à jour le formulaire */ document.getElementById("nom").value = nomUser; } } </script> </head> <body onLoad="document.forms[0].reset();"> <form method="POST" action="passerCommande.php"> <p>Entrez votre login : <input type="text" size="14" name="login" id="login" onChange="getInfosClient();" /> </p> <p>Votre nom :</p> <p><textarea name="nom" id="nom" rows="4" cols="50"></textarea></p> <p><input type="submit" id="submit" name="submit" value="Commander" /></p> </form> </body> </html>
Je n'ai laissé que ça car si j'ai bien compris, c'est le echo que le javascript prend en compte. Mais si je tape un identifiant et que je change de champ, voici les résultats :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <?php $nom = "TOTO"; echo $nom; ?>
Résultat sous internet explorer 7 : il m'indique que j'ai des erreurs qui empêchent ma page web de s'afficher correctement. Dans le détail :
Résultat avec firefox 1.0.7 : je tape l'identifiant, je passe au champ suivant. Et voici ce qu'il s'affiche dans le champ :ligne : 29
Caractère : 6
Erreur : accès refusé
Code : 0
URL : file:///C:/EasyPHP/www/identifier.html
Je vous remercie d'avance pour votre aide précieuse, je suis à peu près aussi perdue que si j'étais une aiguille dans une botte de foin !<?php
$nom = "TOTO";
echo $nom;
?>
Partager