Ajax
Fermé
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
-
28 sept. 2009 à 12:31
layeures Messages postés 286 Date d'inscription mercredi 13 juin 2007 Statut Membre Dernière intervention 22 juin 2018 - 29 sept. 2009 à 17:46
layeures Messages postés 286 Date d'inscription mercredi 13 juin 2007 Statut Membre Dernière intervention 22 juin 2018 - 29 sept. 2009 à 17:46
20 réponses
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
28 sept. 2009 à 17:06
28 sept. 2009 à 17:06
Essayes comme ça:
tu devrait au moins avoir la boite d'alerte Data envoyée: .....
tu devrait au moins avoir la boite d'alerte Data envoyée: .....
<script type='text/JavaScript'> function go(){ var xhr_object = null; if(window.XMLHttpRequest){ // Firefox xhr_object = new XMLHttpRequest(); }else if(window.ActiveXObject){ // Internet Explorer xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); }else { // XMLHttpRequest non supporté par le navigateur alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); return; } var url = "test.php"; var dede = "ca marche"; var pos="variable1=coco&variable2=coco2"; //xhr_object.open("POST", url, false); xhr_object.open("POST", url, true); //xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=iso-8859-1"); xhr_object.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); alert ("Data envoyées: "+pos); xhr_object.send(pos); if(xhr_object.readyState == 4 && xhr_object.status == 200){ alert("Requête effectuée !"); alert(xhr_object.responseText); }else { alert("Requête NON effectuée !"); } } </script>
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
28 sept. 2009 à 17:30
28 sept. 2009 à 17:30
je vai essayer est ca ne marche pas
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
28 sept. 2009 à 17:37
28 sept. 2009 à 17:37
quand je mes xhr_object.open("POST", url, true);
ca m affiche requete non effectue
donc je les mis a false
ca m affiche requete non effectue
donc je les mis a false
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
28 sept. 2009 à 19:09
28 sept. 2009 à 19:09
Si mis à TRUE , l'exécution de la fonction JavaScript se poursuivra en attendant l'arrivée de la réponse du serveur.
Si mis à FALSE alors synchrone(bloquant), sans réponse le script est bloqué !
la reponse que tu as est celle de la condition:
if(xhr_object.readyState == 4 && xhr_object.status == 200){ non execiutée
donc la requette part bien mais tu n'as pas ma réponse
ton script php est bien dans le même dossier que ta page qui contient le script ajax ?
as tu modifié l'autre ligne ('content type ...
Si mis à FALSE alors synchrone(bloquant), sans réponse le script est bloqué !
la reponse que tu as est celle de la condition:
if(xhr_object.readyState == 4 && xhr_object.status == 200){ non execiutée
donc la requette part bien mais tu n'as pas ma réponse
ton script php est bien dans le même dossier que ta page qui contient le script ajax ?
as tu modifié l'autre ligne ('content type ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
28 sept. 2009 à 20:22
28 sept. 2009 à 20:22
j ai fait exatement comme tu me la dit est ca ne marche pas
les deux fichier ce trouve dans le meme dossier
je ne comprend rien.
les deux fichier ce trouve dans le meme dossier
je ne comprend rien.
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
28 sept. 2009 à 20:27
28 sept. 2009 à 20:27
ca me mes requete non effectuer et la variable ne s affiche pas
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
28 sept. 2009 à 20:55
28 sept. 2009 à 20:55
comme ça ça marche
attention il ya un ordre a respecter previosn traitement d ela réponse avant de faire l'envoi, ensuite j'ai modifie un peu l'initialisationn de la request et séparé la fonction traitement de la réponse
chez moi ça marche ainsi:
attention il ya un ordre a respecter previosn traitement d ela réponse avant de faire l'envoi, ensuite j'ai modifie un peu l'initialisationn de la request et séparé la fonction traitement de la réponse
chez moi ça marche ainsi:
<script type='text/JavaScript'> function go(){ var xhr_object = false; //créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs if (window.XMLHttpRequest) { // Mozilla, Safari,... xhr_object = new XMLHttpRequest(); if (xhr_object.overrideMimeType) { xhr_object.overrideMimeType('text/xml');//un appel de fonction supplémentaire pour écraser l'en-tête envoyé par le serveur, juste au cas où il ne s'agit pas de text/xml, pour certaines versions de navigateurs Mozilla } } else if (window.ActiveXObject) { // IE try { xhr_object = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!xhr_object) { alert('Abandon :( Impossible de créer une instance XMLHTTP'); return false; } var url = "test.php"; var dede = "ca marche"; var pos="variable1=coco&variable2=coco2"; //cette ligne avant la partie open et send !! xhr_object.onreadystatechange = function() {traitementReponse(xhr_object); } xhr_object.open("POST", url, true); xhr_object.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); alert ("Data envoyées: "+pos); xhr_object.send(pos); } ////fonction traitement de la réponse function traitementReponse(xhr_object) { var affich=""; if (xhr_object.readyState == 4) { if (xhr_object.status == 200) { // cas avec reponse de PHP en mode texte: // elements reçus var reponse=xhr_object.responseText; alert(reponse); } else { alert('Un problème est survenu avec la requête.'); } } } </script> <a href="javascript:go();">essai</a>
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
28 sept. 2009 à 21:10
28 sept. 2009 à 21:10
merci de l'interet que tu porte a mon probleme
pour le moment je ne peu pas continue a rester devant mon ordi car sinon je vait devenir fou
alors si t est d'acord rendez vous demain pour resoudre le probleme
dit moi ta variable php $POST[var] elle s'affiche dans ta deuxieme page
pour le moment je ne peu pas continue a rester devant mon ordi car sinon je vait devenir fou
alors si t est d'acord rendez vous demain pour resoudre le probleme
dit moi ta variable php $POST[var] elle s'affiche dans ta deuxieme page
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 09:50
29 sept. 2009 à 09:50
salut
j ai tester un deuxieme foie le code est ca ne marche pas.
j ai tester un deuxieme foie le code est ca ne marche pas.
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 10:02
29 sept. 2009 à 10:02
je trouve ca bizarre quand je execute le code ajax il me mes
Détails de l’erreur de la page Web
Agent utilisateur : Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6; InfoPath.2)
Horodateur : Tue, 29 Sep 2009 08:00:46 UTC
Message : Accès refusé.
Ligne : 38
Caractère : 2
Code : 0
URI : file:///C:/wamp/www/ajax%20test/Copie%20de%20ajax.html
Message : Accès refusé.
Ligne : 38
Caractère : 2
Code : 0
URI : file:///C:/wamp/www/ajax%20test/Copie%20de%20ajax.html
Message : Accès refusé.
Ligne : 38
Caractère : 2
Code : 0
URI : file:///C:/wamp/www/ajax%20test/Copie%20de%20ajax.html
Détails de l’erreur de la page Web
Agent utilisateur : Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6; InfoPath.2)
Horodateur : Tue, 29 Sep 2009 08:00:46 UTC
Message : Accès refusé.
Ligne : 38
Caractère : 2
Code : 0
URI : file:///C:/wamp/www/ajax%20test/Copie%20de%20ajax.html
Message : Accès refusé.
Ligne : 38
Caractère : 2
Code : 0
URI : file:///C:/wamp/www/ajax%20test/Copie%20de%20ajax.html
Message : Accès refusé.
Ligne : 38
Caractère : 2
Code : 0
URI : file:///C:/wamp/www/ajax%20test/Copie%20de%20ajax.html
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
29 sept. 2009 à 10:19
29 sept. 2009 à 10:19
C'est normal sur IE si pour lancer une page html tu cliques sur le nom dans l'explorateur, IE bloque l'accès à javascript , tu dois avoir une fenêtre ou qq chose pour autoriser le script
pour faire tes test il te faut un serveur, pour pouvoir ensuite executer le php
si tu ne l'as pas, télécharges et installes wamp sur ton PC
et pour test un script tu tapes dans la barre d'adresse de ton navigateur
http://127.0.0.1/nom_de_ton_script.html
wamp doit être lancé avant bien sur
pour faire tes test il te faut un serveur, pour pouvoir ensuite executer le php
si tu ne l'as pas, télécharges et installes wamp sur ton PC
et pour test un script tu tapes dans la barre d'adresse de ton navigateur
http://127.0.0.1/nom_de_ton_script.html
wamp doit être lancé avant bien sur
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 10:44
29 sept. 2009 à 10:44
salut
c est ce que je fessai debut le debut j'executer la page sur mon serveur local avec WAMPSERVEUR
puis j ai voulu teste diretement sans le serveur est ca ma mis erreur acces refuser.
mes quand j'excuter la page coter serveur ca ne m'affiche pas ce message mes ca ne marche pas quand meme car la variable n etait pas envoyer car elle ne s'affiche pas dans la deuxieme page.
c est ce que je fessai debut le debut j'executer la page sur mon serveur local avec WAMPSERVEUR
puis j ai voulu teste diretement sans le serveur est ca ma mis erreur acces refuser.
mes quand j'excuter la page coter serveur ca ne m'affiche pas ce message mes ca ne marche pas quand meme car la variable n etait pas envoyer car elle ne s'affiche pas dans la deuxieme page.
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 11:01
29 sept. 2009 à 11:01
le probleme vien peu etre de la configuration de mon serveur ?????????????
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
29 sept. 2009 à 13:27
29 sept. 2009 à 13:27
la variable n etait pas envoyer car elle ne s'affiche pas dans la deuxieme page.
Le principe d'Ajax est justement de ne pas recharger la page donc pas de deuxième page
Principe:
- dans une page 1 html par un lien ou un bouton tu lances le script javascript/Ajax
- ce dernier appelle en "arriere plan" sans rechargement de la page un script php sur le serveur
- en lui passsant un ou plusieurs parametres (variable1 variable2 dans ton cas)
- le script php récupere ces valeurs
- fait un traitement (dans ton cas juste un echo de la valeur reçue)
- lorsque le navigateur reçoit la réponse , le script javascript/Ajax par xhlr_object.onreadystaechange=
lance une fonction qui traite la réponse
dans ton cas c'est juste une boite d'alert donc une boite de dialogue javascript qui te dit la réponse, mais tu peux faire écrire la réponse a un endroit précis de la page1, dans un <div id="reponse"></div>
par
document.GetElementById('reponse').innerHTML=xhr_object.responseText;
Le principe d'Ajax est justement de ne pas recharger la page donc pas de deuxième page
Principe:
- dans une page 1 html par un lien ou un bouton tu lances le script javascript/Ajax
- ce dernier appelle en "arriere plan" sans rechargement de la page un script php sur le serveur
- en lui passsant un ou plusieurs parametres (variable1 variable2 dans ton cas)
- le script php récupere ces valeurs
- fait un traitement (dans ton cas juste un echo de la valeur reçue)
- lorsque le navigateur reçoit la réponse , le script javascript/Ajax par xhlr_object.onreadystaechange=
lance une fonction qui traite la réponse
dans ton cas c'est juste une boite d'alert donc une boite de dialogue javascript qui te dit la réponse, mais tu peux faire écrire la réponse a un endroit précis de la page1, dans un <div id="reponse"></div>
par
document.GetElementById('reponse').innerHTML=xhr_object.responseText;
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 14:02
29 sept. 2009 à 14:02
moi ce que je veu c est envoyer la var a la deuxieme page est l'afficher avec echo $_POST['variable1'];
ce probleme va me rendre fou
ce probleme va me rendre fou
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 14:04
29 sept. 2009 à 14:04
je ten suplie par pitie aide moi
pitie pitie
pitie pitie
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
29 sept. 2009 à 14:18
29 sept. 2009 à 14:18
alors si tu veux envoyer une valeur a une autre page, tu n'as pas besoin de Ajax
il te faut un formulaire pour pouvoir le faire en méthode POST
et test.php
il te faut un formulaire pour pouvoir le faire en méthode POST
page1.html <html> <form name="form1" method="post" action="test.php"> <input type="text" name="variable1" value="coco"><br /> <input type="submit" name="envoyer" value="Vers test"><br /> </form> </html>
et test.php
<?php $az = $_POST['variable1']; echo 'La valeur reçue est :'.$az; ?>
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 14:26
29 sept. 2009 à 14:26
le probleme c est que je suis obliger d'utiliser ajax car avec ajax il m affiche une reponse si les donnee ont etait envoyer ou pas et en php ca c est pas possible enfin je croie.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
29 sept. 2009 à 15:34
29 sept. 2009 à 15:34
La je ne te suis pas trop, je ne vois pas ce que tu cherches à faire
- en utilisant AJAX, on envoie les données et on affiche la réponse du script php dans la m^me page sans avoir besion d'afficher une autre page
- en php on envoie les données vers un script php celui de action="...." du formulaire et ce script charge une nouvelle page dans laquelle il peut mettre la réponse
si tu fais l'essai avec les bouts de code que je viens de te donner tu verra bien que c'est possible
- en utilisant AJAX, on envoie les données et on affiche la réponse du script php dans la m^me page sans avoir besion d'afficher une autre page
- en php on envoie les données vers un script php celui de action="...." du formulaire et ce script charge une nouvelle page dans laquelle il peut mettre la réponse
si tu fais l'essai avec les bouts de code que je viens de te donner tu verra bien que c'est possible
layeures
Messages postés
286
Date d'inscription
mercredi 13 juin 2007
Statut
Membre
Dernière intervention
22 juin 2018
3
29 sept. 2009 à 17:46
29 sept. 2009 à 17:46
si je suis interesser par ajax c est que ajax dans la premier page il affiche le resultat des envoie des donnee
alors avec php c est pas possible
ajax dans la premier page affiche si les donnee en etait envoyer
voila pourquoi je me case la tete a essayer de fait un script d'envoie de donnee en ajax et pas php
alors avec php c est pas possible
ajax dans la premier page affiche si les donnee en etait envoyer
voila pourquoi je me case la tete a essayer de fait un script d'envoie de donnee en ajax et pas php