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

AJAX Discussion :

Chemin d'accès à l'URL d'appel du fichier PHP


Sujet :

AJAX

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut Chemin d'accès à l'URL d'appel du fichier PHP
    Bonjour à tous,

    Voici le code que j'utilise et il fonctionne...
    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
    <script type="text/javascript">
    <!--
    // Code ajax pour l'affichage du mail
    function showInfo(type)
    {
    	var xmlhttp=new XMLHttpRequest();
     
    	xmlhttp.onreadystatechange=function()
    	{
    		if (xmlhttp.readyState === XMLHttpRequest.DONE)
    		{
    			if (xmlhttp.status === 200)
    			/*if (this.readyState==4 && this.status==200)*/
    		 	{
    				// conversion chaîne en objet
    				var obj = JSON.parse(xmlhttp.responseText);
     
    				if(type == 'Contact')
    				{
    					document.getElementById('info_contact').innerHTML = obj['info_result'];
    				}
     
    				if(type == 'Mail')
    				{
    					document.getElementById('info_mail').innerHTML = obj['info_result'];
    				}
     
    				if(type == 'Tel')
    				{
    					document.getElementById('info_tel').innerHTML = obj['info_result'];
    				}
    			}
    			else
    			{
    				alert('Il y a eu un problème avec la requête.');
    			}
        	}
      	}
     
      xmlhttp.open("GET","../ajax/ajax_annonce_infos.php?t=" + type ,true);
      xmlhttp.send();
    }
    -->
     
    </script>
    ... sauf que lorsque j'appelle mon fichier "ajax_annonce_infos.php" (ligne 40) à partir d'une page située à la base de mon site cela ne fonctionne plus ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xmlhttp.open("GET","ajax/ajax_annonce_infos.php?t=" + type ,true);
    ... je ne comprend pas pourquoi.

    Quelqu’un peut t’il m'aider ? J'ai besoin que cela fonctionne comme ça.

    Merci

  2. #2
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 453
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 453
    Points : 4 602
    Points
    4 602
    Par défaut
    ce sont des chemins relatifs (par rapport au fichier courant)

    ".." signifie "remonte d'un dossier dans l'arborescence par rapport a la ou tu es"

    t'as 2 codes d'exemples l'un avec le ".." et l'autre sans.

    si par exemple tu es dans tonsite.com/test/index.html et que tu demandes "ajax/ajax_annonce_infos.php"
    => il va chercher tonsite.com/test/ajax/ajax_annonce_infos.php

    si tu demandes "../ajax/ajax_annonce_infos.php"
    => il va chercher tonsite.com/ajax/ajax_annonce_infos.php


    ps (et c'est peut-etre un autre sujet) ton code peut etre simplifie (a tester)
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function showInfo(type) {
    	fetch(`../ajax/ajax_annonce_infos.php?t=${type}`) // a voir si le chemin est le bon
        .then(response => response.json())
        .then(data => {
    	document.getElementById(`info_${type.toLowerCase()}`).innerHTML = data.info_result;
        })
        .catch(e => {
          alert('Il y a eu un problème avec la requête.');
          console.log(e);
        });
    }
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    Merci pour votre réponse.

    j'ai bien compris l'histoire des chemins relatifs ...

    ce que je ne comprends pas c'est que :

    • si je suis dans monsite.com/test/index.html et que je demandes "../ajax/ajax_annonce_infos.php" cela fonctionne ...

    • si je suis dans monsite.com/index.html et que je demandes "ajax/ajax_annonce_infos.php" cela ne fonctionne pas ... et j'ai besoin que cela fonctionne comme cela .

  4. #4
    Membre confirmé
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 321
    Points : 642
    Points
    642
    Par défaut
    Bonjour,

    Pour éviter les problèmes de chemins relatifs, renseignes le chemin absolu à partir de la racine de ton site (le premier / après le nom de domaine).
    Si le dossier ajax est bien à la racine du site :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fetch(`/ajax/ajax_annonce_infos.php?t=${type}`)
    L'URL /ajax/ajax_annonce_infos.php sera considérée comme tonsite.com/ajax/ajax_annonce_infos.php indépendamment de la page courante.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    j'avais essayé cela ne fonctionne pas

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    qu'est ce qui ne fonctionne pas ? la requête http retourne une erreur 404 ? le résultat du code n'est pas celui prévu ?
    montrez nous l'url où on peut tester cette page.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    En fait j'ai trouvé ...

    Le problème vient de cette ligne que j'ai sur la page ou Ajax ne fonctionne pas ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="scripts/diapo/class.viewer.js/mootools-1.2-core.js"></script>
    ... il doit y avoir un conflit qui n'existe plus lorsque je supprime cette ligne... Problème du coups c'est le diaporama sur la page en question qui ne fonctionne plus

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    j'ai trouvé une version plus récente "Mootools". J'ai testé avec "MooTools-Core-1.6.0.js" et maintenant tout fonctionne ...

    Merci pour votre temps.
    Cdt,

  9. #9
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 961
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 961
    Points : 44 133
    Points
    44 133
    Par défaut
    Bonjour,
    j'ai trouvé une version plus récente "Mootools". J'ai testé avec "MooTools-Core-1.6.0.js"
    Sérieux ... la biblio. n'a pas été mis à jour depuis plus de 8 ans et d'autre part elle dispose d'une classe Request alors pourquoi ne pas l'utiliser !?!

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    Désolé je ne vois pas de quoi vous parlez

  11. #11
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 961
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 961
    Points : 44 133
    Points
    44 133
    Par défaut
    Je parlais de l'utilisation de Mootools.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Symfony 4.2 : appeler fichier PHP depuis JS
    Par Zarkoffe dans le forum Symfony
    Réponses: 7
    Dernier message: 16/04/2020, 19h01
  2. Affichage Modal et appel fichier php
    Par oitsuki dans le forum Langage
    Réponses: 7
    Dernier message: 18/09/2016, 19h10
  3. Appeler fichier php
    Par Kreepz dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/12/2014, 10h53
  4. Appel fichier php avec $.getJSON
    Par bagodah dans le forum jQuery
    Réponses: 3
    Dernier message: 20/04/2011, 14h18
  5. Appel fichier PHP depuis page HTML
    Par luc1310 dans le forum Langage
    Réponses: 5
    Dernier message: 03/10/2008, 15h17

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