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 :

Inclure fichier php externe


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut Inclure fichier php externe
    Bonjour à tous,

    Dans un fichier javascript, j'utilise un objet Ajax, et sa fonction .open :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("POST", "/efstc_v2/php/facade/Facade_country.php", true)
    Cependant, le fichier php (en paramètre) est appelé avec un chemin absolu. Dans un fichier 'config.php', j'ai défini une variable globale qui remplace ce chemin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define('EFSTC_FACADE_FILES', $_SERVER['DOCUMENT_ROOT'].'/efstc_v2/php/facade/');
    Donc pour le paramètre de l'objet Ajax, je veux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("POST", EFSTC_FACADE_FILES."Facade_country.php", true);
    Mais le problème, c'est que la variable EFSTC_FACADE_FILES ne signifie rien dans mon fichier javascript ! Et je ne peux pas appeler le fichier 'config.php' de cette manière... :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once $_SERVER['DOCUMENT_ROOT'].'/efstc_v2/config/config.php';
    Ca fonctionne pour du php mais pas pour du js...
    Comment faire l'équivalent dans un fichier javascript ?


    Merci par avance.

  2. #2
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    <? php echo ("var Xhr_Open_Url='".$URL_PHP."';"); ?>
    </script>

  3. #3
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Merci FremyCompany, mais je ne comprends comment utiliser ta solution... Pourrais-tu être plus explicite ?

  4. #4
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Je fais un "up" en attendant que FremyCompany m'explique son bout de code... Merci par avance !

  5. #5
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Une variable PHP n'est pas valable en JS...
    Tu dois transférer les données...

  6. #6
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Citation Envoyé par FremyCompany
    Tu dois transférer les données...
    C'est-à-dire ? Je dois stocker, ailleurs que dans le javascript, l'url dont j'ai besoin, et aller la chercher quand j'en ai besoin (donc pour la méthode ajax .open) ?

  7. #7
    Membre éprouvé Avatar de rieppe
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 115
    Par défaut
    Salut,

    Il faut bien se mettre en tête que le php est interprété. En quelque sorte quand tu fais un echo en php tu écris dans la source html de ta page.

    A partir de là, tu peux utiliser ta variable global par le php comme ceci par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("POST", <?php echo EFSTC_FACADE_FILES."Facade_country.php"; ?>, true)
    Biensur tu dois inclure le fichier où tu as défini ta variable globale.

    Je pense que ca passe comme ça.

  8. #8
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Merci rieppe, donc suivant tes indications et celles de Fremy, j'ai en haut du fichier javascript ce bout de code php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    require_once $_SERVER['DOCUMENT_ROOT'].'/efstc_v2/config/config.php';
    $url = EFSTC_FACADE_FILES."Facade_country.php";
    echo ("var xhr_url='".$url."';");
    ?>
    Puis plus bas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("POST", xhr_url, true);
    Pourtant ça me fait une erreur, il semble ne pas connaitre 'xhr_url'...

  9. #9
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par gazza
    Merci rieppe, donc suivant tes indications et celles de Fremy, j'ai en haut du fichier javascript ce bout de code php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    require_once $_SERVER['DOCUMENT_ROOT'].'/efstc_v2/config/config.php';
    $url = EFSTC_FACADE_FILES."Facade_country.php";
    echo ("var xhr_url='".$url."';");
    ?>
    Puis plus bas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("POST", xhr_url, true);
    Pourtant ça me fait une erreur, il semble ne pas connaitre 'xhr_url'...
    Vérifie dans ton fichier javascript généré que tout est correctement positionné (en appellant manuellement dans la barre d'adresse l'url de ton fichier javascript, généré par PHP).

  10. #10
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Citation Envoyé par denisC
    Vérifie dans ton fichier javascript généré que tout est correctement positionné (en appellant manuellement dans la barre d'adresse l'url de ton fichier javascript, généré par PHP).
    Quand je tape l'url 'http://127.0.0.1/efstc_v2/php/facade/js/js_country.js' j'ai le même contenu que quand j'ouvre le fichier avec un notepad...
    Et quand j'appelle 'http://127.0.0.1/efstc_v2/php/facade/Facade_country.php', c'est-à-dire le fichier ouvert par xhr_open, il affiche bien les résultats attendus

  11. #11
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par gazza
    Quand je tape l'url 'http://127.0.0.1/efstc_v2/php/facade/js/js_country.js' j'ai le même contenu que quand j'ouvre le fichier avec un notepad...
    Euh, justement, c'est pas un peu problèmatique, ça, non?

    Typiquement, ton fichier, il devrait pas avoirune extension en .php pour être traité par ton serveur Apache, et générer réellement un fichier javascript?

  12. #12
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2004
    Messages : 84
    Par défaut
    Citation Envoyé par denisC
    Typiquement, ton fichier, il devrait pas avoirune extension en .php pour être traité par ton serveur Apache, et générer réellement un fichier javascript?
    Le fameux fichier javascript 'js_country.js' est une librairie de fonctions, et parmi ces fonctions, l'une d'entre elles est chargée du même code qu'ici : http://siddh.developpez.com/articles/ajax/#LII,
    pour gérer l'objet xmlhttprequest...

    Donc j'ai un fichier html, qui appelle ces librairies avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="/efstc_v2/php/facade/js/js_country.js" type="text/javascript"></script>
    placé à l'endroit voulu.

Discussions similaires

  1. Inclure un fichier PHP dans une iframe
    Par guy2004 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 08/07/2007, 15h30
  2. Inclure un fichier PHP dans un programme PERL?
    Par Munkey74 dans le forum Langage
    Réponses: 2
    Dernier message: 31/05/2007, 11h01
  3. Inclure un fichier php
    Par bodysplash007 dans le forum Langage
    Réponses: 2
    Dernier message: 18/04/2007, 11h19
  4. [VB] Inclure un fichier PHP
    Par Kernald dans le forum VB.NET
    Réponses: 7
    Dernier message: 02/02/2007, 19h40

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