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

Langage PHP Discussion :

Require_once() et path sur requete ajax


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 48
    Points : 29
    Points
    29
    Par défaut Require_once() et path sur requete ajax
    Bonjour/soir à tous et à toutes.

    Je savais pas trop dans quelle section poster mon sujet parce qu'il mélange ajax et php.

    Voilà le soucis:

    J'ai une page qui affiche une carte, cette parge est séparée en deux div, l'une contient la carte, l'autre le menu.

    J'ai écrit une fonction ajax comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function gerer_ville(id_case)
    {
    	new Ajax.Updater(
    		'panneau',
    		'controller/panneau.php',
    		{
    			method: 'post',
    			parameters: {id_case: id_case}
    		}
    	);
    }
    Et le contenu de mon "panneau.php" est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    		require_once 'include.php';
     
    		echo 'Gestion de la ville';
    Mon include est placé à la racine de mon dossier.
    Seulement voilà, il m'affiche ceci:

    Warning: require_once(include.php) [function.require-once]: failed to open stream: No such file or directory in D:\wamp2\www\Amadeus\controller\panneau.php on line 2

    Fatal error: require_once() [function.require]: Failed opening required 'include.php' (include_path='.;C:\php5\pear') in D:\wamp2\www\Amadeus\controller\panneau.php on line 2
    J'utilise phpTAL comme moteur de template.
    Je pense que le problème vient du fait que la page panneau.php n'est pas appelée comme il faut mais je n'arrive pas à trouver pourquoi...

    Merci de bien vouloir m'aider.
    N'hésitez pas à me demander plus de précisions si vous le souhaitez.

  2. #2
    Membre habitué Avatar de alejandro
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2004
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2004
    Messages : 167
    Points : 188
    Points
    188
    Par défaut
    Bonsoir,

    Essaye ceci à tout hasard ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once( 'Amadeus/include.php' );
    ... ou bien ceci ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once( 'Amadeus/controller/include.php' );
    ... et si ça ne marche pas donne nous l'arborescence de ton site avec l'emplacement du fichier car là ton chemin d'inclusion fait que tu essaie de charger le fichier include.php à partir du répertoire www et que ton fichier ne s'y trouve pas.

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 48
    Points : 29
    Points
    29
    Par défaut
    Cela ne fonctionne malheureusement pas. J'ai toujours la même erreur.

    Le site est fait comme ceci:

    Fichiers à la racine:
    -[Dossier]bdd (contient)[dossier]adapter
    -[Dossier]controller
    -[Dossier]viewer
    -[Dossier]js
    -General.html
    -include.php
    -config.php
    -index.php

    La page jouer est dans le dossier controller. Cette page appelle une fonction affichercarte() qui se trouve dans le fichier map_adapter.php (dans le dossier adapter donc).

    cette fonction écrit du html, elle insère également jouer.js dans la page, ce qui me permet de lancer la fonction que j'ai décrite dans mon post précédent.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    C'est en effet manifestement un souci de path
    soit le path relatif n'est pas correct, soit tu as un souci de casse ou encore d'encodage du path

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 48
    Points : 29
    Points
    29
    Par défaut
    D'accord, comment puis-je contourner ou résoudre le problème ?

    Comment changer l'encodage ou je ne sais quoi faire pour que cela fonctionne ?


  6. #6
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    423
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 423
    Points : 303
    Points
    303
    Par défaut
    Bonjour,
    Essaye ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    require_once( '../include.php' );

  7. #7
    Membre habitué Avatar de alejandro
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2004
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2004
    Messages : 167
    Points : 188
    Points
    188
    Par défaut
    Moi il y a quelque chose qui m'intrigue :

    Fatal error: require_once() [function.require]: Failed opening required 'include.php' (include_path='.;C:\php5\pear') in D:\wamp2\www\Amadeus\controller\panneau.php on line 2
    On voit ici qu'apparemment la racine de ton site est située à :

    D:\wamp2\www
    Pourtant dans ta description d'arborescence tu nous dis que le dossier "controller" se trouve à la racine de ton site. Ce que je vois moi c'est que ton dossier "controller" se trouve dans :

    D:\wamp2\www\Amadeus
    Alors je me pose une question : As-tu configuré ton serveur de façon particulière ou t'es tu trompé en nous donnant l'arborescence de ton site ?

    Normalement ton include path pointe vers la racine de ton site (.), soit "D:\wamp2\www" et vers le dossier pear (C:\php5\pear). Donc quand tu fais un require, il va recherche le chemin que tu lui donne dans l'un ou dans l'autre.

    Un require( 'include.php' ) va donc provoquer une tentative de chargement du fichier aux adresses suivantes :

    D:\wamp2\www\include.php
    ou bien
    C:\php5\pear\include.php

    Dernière possibilité que j'entrevois c'est une histoire de fichier .htaccess mais apparemment tu n'en as pas mis. Vérifie bien que ton fichier existe dans l'un de ces deux emplacements, et vérifie également les majuscules/minuscules, bien qu'au vu de tes chemins d'accès tu dois être sur Windows et que donc ça n'a pas d'importance.

Discussions similaires

  1. Requete AJAX sur serveur exterieur.
    Par ABandApart dans le forum jQuery
    Réponses: 2
    Dernier message: 19/09/2010, 21h37
  2. requete ajax sur un serveur web en java depuis php
    Par enzostar dans le forum Général JavaScript
    Réponses: 29
    Dernier message: 29/03/2010, 13h59
  3. Réponses: 4
    Dernier message: 27/02/2010, 22h04
  4. Réponses: 3
    Dernier message: 06/07/2009, 11h18
  5. [AJAX] Requete ajax sur une meme page php
    Par Bownobo dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/06/2007, 11h25

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