IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] Ajax EasyPHP


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut [AJAX] Ajax EasyPHP
    Bonjour à tous,

    Je débute complétement sous Ajax, et je suis en train de suivre les tutos du forum.

    J'ai testé le 1er exemple de ce cours : http://siddh.developpez.com/articles/ajax/

    Sur un vrai serveur, cela fonctionne, c'est a dire que le test retourne vrai.

    En local, avec EasyPhp, req.status vaut toujours 0.

    Je ne comprends pas vraiment, pensez que ceci est du au fait que ca soit en local ?

    Merci bien.

    @+.

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par schnito
    En local, avec EasyPhp, req.status vaut toujours 0.

    Je ne comprends pas vraiment, pensez que ceci est du au fait que ca soit en local ?
    Est-ce que ta page, appelée hors Ajax, fonctionne (te retourne le résultat attendu avec Ajax) ?

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut
    comment ca ?

    Si j'arrive a ecrire un texte dans le input text qd je clique sur le bouton en javascript ?

    ==> oui, bien sur.

    Le problème la, c la réponse de mon serveur qui vaut 0. Si j'enleve ce test, ca fonctionne.

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par schnito
    Si j'arrive a ecrire un texte dans le input text qd je clique sur le bouton en javascript ?

    ==> oui, bien sur.
    Non : si tu tappes dans la barre d'@ de ton nav directement l'URL appelée par Ajax, avec les bons paramètres ?
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut
    tain mais je comprends pas ...

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par schnito
    tain mais je comprends pas ...

    Quoi donc ?
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  7. #7
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut
    ca :

    Non : si tu tappes dans la barre d'@ de ton nav directement l'URL appelée par Ajax, avec les bons paramètres ?

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Ben ta fonction Ajax, elle appelle bien une url, non (à priori un .php ou .asp) ?
    Avec des paramètres (ou pas) que tu génères peut-être en dynamique.
    Récupère cette url (a priori c'est ton code qui la génère) et entre la directement dans la barre d'adresse de ton nav.
    Si Ajax doit te retourner "coucou", tu dois avoir une page blanche avec juste "coucou".
    Sinon, c'est que le serveur (ton .php ou .asp) ne te retourne pas ce que tu attendais (peut-être une erreur de BDD, par ex) ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  9. #9
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut
    ouais, mais la tu vas déjà trop loin.

    Regarde le 1er exemple de ce cours.

    http://siddh.developpez.com/articles/ajax/

    Mon pb, c que quand je teste la propriété status, mon serveur me retourne toujours 0. (je l'affiche avec un alert). Il ne me retourne jamais 200.

    Donc le code ajax n'est jamais executé

  10. #10
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Sans voir ton code, pas possible d'aller plus loin.
    0 n'est pas un code "retour" (non référencé selon ton tuto).

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  11. #11
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut
    Ouais, ce code n'est pas referencé, c que qui est encore plus étrange.

    Voici le code.

    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    	<script language="JavaScript">
    	function submitForm()
    	{ 
    		var req = null; 
     
    		document.ajax.dyn.value="Started...";
    		if(window.XMLHttpRequest)
    			req = new XMLHttpRequest(); 
    		else if (window.ActiveXObject)
    			req  = new ActiveXObject(Microsoft.XMLHTTP); 
     
    		req.onreadystatechange = function()
    		{ 
    			document.ajax.dyn.value="Wait server...";
    			if(req.readyState == 4)
    			{
    				if(req.status == 200)
    				{
    					document.ajax.dyn.value="Received:" + req.responseText;	
    				}	
    				else	
    				{
    					document.ajax.dyn.value="Error: returned status code " + req.status + " " + req.statusText;
    				}	
    			} 
    		}; 
    		req.open("GET", "data.xml", true); 
    		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
    		req.send(null); 
    	} 
    	</script>
    	</head>
     
    	<body>
    		<FORM name="ajax" method="POST" action="">
     
      <p>
        <INPUT type="BUTTON" value="Submit"  ONCLICK="submitForm()">
      </p>
      <p>
        <input type="text" name="dyn" size="32" value="">
      </p>
    </FORM>
    	</body>
    </html>

  12. #12
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    A l'intérieur de la fonction
    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
    		req.onreadystatechange = function()
    		{ 
    			document.ajax.dyn.value="Wait server...";
    			if(req.readyState == 4)
    			{
    				if(req.status == 200)
    				{
    					document.ajax.dyn.value="Received:" + req.responseText;	
    				}	
    				else	
    				{
    					document.ajax.dyn.value="Error: returned status code " + req.status + " " + req.statusText;
    				}	
    			} 
    		};
    essaye de remplacer "req" par "this".

    Le + étrange est que tu n'est pas d'erreur JS !
    Es-tu sûr d'avoir activer la "notification d'erreurs de script" dans ton nav ?

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  13. #13
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par E.Bzz
    Le + étrange est que tu n'est pas d'erreur JS !
    Car comme c'est écrit, pour ta fonction, au moment où elle s'exécute, l'objet "req" n'existe pas ...

    EDIT : d'où le "0"
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  14. #14
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 223
    Points : 58
    Points
    58
    Par défaut
    Oui oui c'est activé.

    L'objet req, il est crée ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(window.XMLHttpRequest)
      req = new XMLHttpRequest(); 
    else if (window.ActiveXObject)
      req  = new ActiveXObject(Microsoft.XMLHTTP);

  15. #15
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par E.Bzz
    Car comme c'est écrit, pour ta fonction, au moment où elle s'exécute, l'objet "req" n'existe pas ...

    EDIT : d'où le "0"
    Tu as essayé de remplacer "req" par "this" dans la fonction ?
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

Discussions similaires

  1. [EasyPHP] ajax et EasyPHP
    Par ledisciple dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 12
    Dernier message: 12/08/2011, 12h58
  2. [AJAX] Ajax, formulaire, div et select
    Par n8ken dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/09/2006, 10h51
  3. [AJAX] Ajax et les accents
    Par nico-pyright(c) dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 09/12/2005, 20h09
  4. [AJAX] Ajax et javascript contenu
    Par zekey dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/09/2005, 20h16
  5. [AJAX] AJAX et javascript
    Par spud5351 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/09/2005, 10h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo