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 :

Include non fonctionnel


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut Include non fonctionnel
    Bonjour,

    Pourquoi lorsqu'on appelle une page PHP par l'intermédiaire d'une requête HTTP xmlHTTPRequest, les "includes" en tête de fichier ne sont pas gérés.

    Merci.

  2. #2
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    ils sont gérés. il doit y avoir un autre problème.

  3. #3
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    C'est bizarre, j'ai un fichier util.php dans lequel j'ai implémenté de nombreuses fonctions PHP. Quand je l'include dans mon fichier PHP (lequel est appelé par xhr.open("GET","../../includes/bd_action.php?act=addPlanif&idOrg=" + id_org , false);), les fonctions ne sont pas connues de ce dernier...
    Alors que lors d'un rechargment complet de la page, il n'y a aucun problème, les fonctions sont appelées correctement.

  4. #4
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    quel message d'erreur obtiens-tu ?

  5. #5
    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,

    Tu as un include('util.php'); dans ton fichier bd_action.php ?

    Ca a l'air bête mais on sait jamais

  6. #6
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Citation Envoyé par rieppe

    Tu as un include('util.php'); dans ton fichier bd_action.php ?
    Oui oui t'inquiète pas. Je ne suis pas si c**

    Citation Envoyé par marcha
    quel message d'erreur obtiens-tu ?
    Je n'obtiens aucun message d'erreur précis.
    C'est juste que ma fonction n'est pas appelée. Pour exemple, j'ai fait une fonction pg_insert_id (correspondant au mysql_insert_id pour MySQL pour déterminer le nouvel identifiant créé) dans mon util.php et ça a toujours bien fonctionné.
    Depuis que je suis passé à AJAX, je fais de nombreuses requêtes xmlHTPPRequest et lorsque je fais un echo"a" après l'appel de cette fonction et que je récupère cela avec un alert (xhr.responseText) : aucun message.
    De plus, ma requête SQL suivante ne s'exécute pas.
    En revanche, lorsque je mais directement la fonction pg_insert_id dans le fichier bd_action.php, là ça fonctionne.
    Le souci, c'est que c'est c** d'avoir un fichier util.php contenant toutes les fonctions si je suis obligé de les recopier toutes dans tous mes fichiers php...

  7. #7
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Salut,

    est-ce que les chemins relatifs d'inclusion ne seraient pas à l'origine
    du problème ? peux-tu donner l'emplacement des fichiers concernés
    dans les deux cas ?

  8. #8
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Non non c'est pas ça c'est sûr, j'avais essayé de lui fournir des chemins erronés ou de supprimer le fichier et dans les cas là il me fournit un message d'erreur clair.

  9. #9
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Tu arrives à donner un code le plus simple possible qui provoque l'erreur ?
    qu'on puisse tester ?

  10. #10
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Désolé, là ça va pas être possible dans l'immédiat...
    Demain, je vous envoie un extrait de code, pas de problème.

  11. #11
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Mon util.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function pg_insert_id($link,$tablename,$fieldname)
    {	
    	$sql = "SELECT last_value FROM ${tablename}_${fieldname}_seq;";
    	$result=pg_query($link,$sql);	 
    	if ($result) {	 
            	 $arr = pg_fetch_row($result,0);
    		 pg_free_result($result);
             	if (isset($arr[0])) return $arr[0];
         	}
         return false;
    }
    Mon bd_action.php :

    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
     
    include ('/util.php');
     
    if ($_GET["act"] == "test") {
                 $var = 'OUI';    
      	$pg_host  = "localhost";
    	$pg_user  = "u";
    	$pg_passw = "pw";
    	$pg_db = "bd";
    	$conn_string = "host=" . $pg_host . " port=5432 dbname=" . $pg_db . " user=" . $pg_user . " password=" . $pg_passw;
    	$link = pg_connect($conn_string) 
    	or die("Connexion Impossible! ");
     
         $sql =  "INSERT INTO T_table ";
         $sql .="(table_nom,table_visible,is_group) ";
         $sql .="VALUES ('" . strtoupper($_GET['name']) . "', '$var','OUI') ";
     
         $res=pg_query($link,$sql);
         $new_id = pg_insert_id($link,'T_table','id_table');
         echo $new_id;
    }
    Finalement, mon script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function test (n) {
         try {
            var xhr=getXhr();
            xhr.open("GET","../bd_action.php?act=test&name=" + n , false);
    		xhr.send(null);        
            if(xhr.readyState == 4 && xhr.status == 200){
                  alert (xhr.responseText);
             } else {
                alert("Erreur:" + xhr.responseText);
            }
        } catch (ex) {
            alert("Exception: " + ex.message);
        }
    }
    Voilà, j'ai essayé de réduire au maximum pour alléger mais normalement la structure globale est fonctionnelle.
    Là vous verrez que la fonction pg_insert_id bloque...

  12. #12
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Sinon pour éviter de travailler avec une BDD :

    util.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function en_to_re_date2($date_en) {
            list($aaaa,$mm,$jj) = split('-',$date_en);
            $date_re = $jj . $mm . substr($aaaa,2,2);
            return($date_re);
    }
    bd_action.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    include ('util.php');
     
    if ($_GET["act"] == 'test') {
       echo en_to_re_date2($_GET["date"]);
    }
    Script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function test (d) {
         try {
            var xhr=getXhr();
            xhr.open("GET","../bd_action.php?act=test&date=" + d , false);
    		xhr.send(null);        
            if(xhr.readyState == 4 && xhr.status == 200){
                  alert (xhr.responseText);
             } else {
                alert("Erreur:" + xhr.responseText);
            }
        } catch (ex) {
            alert("Exception: " + ex.message);
        }
    }

  13. #13
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Salut,

    et que reçoit tu dans xhr.responseText ?

  14. #14
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Chez moi ça fonctionne,

    mais j'ai mis les trois fichiers dans un même dossier pour mon test.

    xhr.open("GET","bd_action.php?act=test&date=" + d , false);

    d'autre part, j'ai ma propre fonction getXhr() puisque tu l'as pas postée,
    le problème vient peux-être de là ?

    tu as regardé dans la console javascript ?

  15. #15
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Citation Envoyé par marcha
    et que reçoit tu dans xhr.responseText ?
    Justement rien.

  16. #16
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Citation Envoyé par marcha
    Chez moi ça fonctionne,

    mais j'ai mis les trois fichiers dans un même dossier pour mon test.
    Moi ils ne sont pas dans le même dossier, j'ai l'arborescence classique : cgi-bin, includes, javascript, html, class-style

    Mon util.php se trouve dans /includes, mon bd_action.php également et mon script dans /javascript.

  17. #17
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Voici mon getXhr() :

    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
    function getXhr(){
    	if(window.XMLHttpRequest) // Firefox et autres
    	   var GetXmlHttpRequest = new XMLHttpRequest(); 
    	else if(window.ActiveXObject){ // Internet Explorer 
    	   try {
                    GetXmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    GetXmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
                }
    	}
    	else { // XMLHttpRequest non supporté par le navigateur 
    	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    		   GetXmlHttpRequest = false; 
    	} 
    	return GetXmlHttpRequest;
    }

  18. #18
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Citation Envoyé par marcha
    tu as regardé dans la console javascript ?
    La console ne me dit rien...

  19. #19
    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 linar009
    Moi ils ne sont pas dans le même dossier, j'ai l'arborescence classique : cgi-bin, includes, javascript, html, class-style

    Mon util.php se trouve dans /includes, mon bd_action.php également et mon script dans /javascript.
    Euh, le chemin dans ton get est relative à la page appellante, et n'a rien à voir avec l'emplacement physique de tes fichiers de scripts.

    Quelle est l'adresse de la page sur laquelle tu souhaites executer le script?

  20. #20
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Tu peux donner le code de getXhr() stp

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [PHP 5.3] include non fonctionnel depuis migration en 5.3
    Par Peyrine dans le forum Langage
    Réponses: 5
    Dernier message: 02/03/2015, 16h55
  2. Update non fonctionnel
    Par kissmytoe dans le forum Access
    Réponses: 7
    Dernier message: 07/03/2006, 18h37
  3. [REPORTS] Order BY non fonctionnel
    Par sdiack dans le forum Reports
    Réponses: 2
    Dernier message: 10/02/2006, 18h10
  4. [Cookies] include non persistant en mémoire
    Par ouioui2000 dans le forum Langage
    Réponses: 1
    Dernier message: 18/10/2005, 15h07
  5. INCLUDE non exécuté
    Par Sadneth dans le forum ASP
    Réponses: 3
    Dernier message: 07/09/2003, 00h44

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