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 :

L'erreur n'est pas dans le code mais où ?


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut L'erreur n'est pas dans le code mais où ?
    Bien le bonjour,

    Voici une incohérence qui se passe lors de l'appel d'une classe :

    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
     
    //Script principal
    //on require le fichier de classe xml_login_infos
    $xml = new xml_login_infos($this->_path_cookie.'/'.$this->_userid,$cookie_params);
    if($xml->check_cookie()) {...}
     
    //Classe xml_login_infos
            public function __construct($path,$attrs) {
    		$this->path_xml = $path;
    		$this->attrs_xml = $attrs;
    	}
     
    	public function check_cookie() {
    		...
    	}
    Et lors de l'exécution :

    Fatal error:
    Call to undefined method xml_login_infos::check_cookie()
    Croyant que le fichier, le nom de classe, le nom de la méthode, la visibilité pouvait causer du tort, j'ai effectué 1000 et 1 astuces pour checker si je n'utilisait pas des mots réservés, mais non...

    Rien n'y fait. C'est un mystére pourquoi j'ai cette erreur .

    Connaîtriez-vous la raison ? Ou une suggestion ?

    Merci d'avance.

    Au plaisir.

    Steve.
    Dernière modification par Deepin ; 04/05/2009 à 08h17. Motif: Ajout du balise "[Quote]"

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 548
    Points
    8 548
    Billets dans le blog
    17
    Par défaut
    Que donne ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $xml = new xml_login_infos($this->_path_cookie.'/'.$this->_userid,$cookie_params);
    echo '<xmp>' ; var_dump($xml) ; echo '</xmp>' ;
    echo '::check_cookie( ) existe ? ', (method_exists($xml, 'check_cookie') ? 'oui' : 'non') ;
    if($xml->check_cookie()) {...}

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut Séb,

    Merci bien pour la rapidité de ta réponse. Je suis sorti du travail et je ne peux exécuté tout de suite ton code.

    Ce lundi venant, je le testerais et je posterais juste après les résultats du code.

    @ tantôt.

    Steve.

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 548
    Points
    8 548
    Billets dans le blog
    17
    Par défaut
    OK à lundi

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour !

    J'ai donc exécuté ton code Séb, j'ai bien mon gros dump avec mes variables xml...



    ... par contre : "::check_cookie( ) existe ? non", insensé...

    Je vais checker de nouveau mais j'avoue être bloqué là.

    Une idée, une suggestion, n'hésitez pas

    Au plaisir.

    Steve.

  6. #6
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 548
    Points
    8 548
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par styvodiabolo Voir le message
    ... par contre : "::check_cookie( ) existe ? non", insensé...

    Es-tu sûr d'appeler la bonne classe ? http://fr.php.net/get-class
    Essaie en changeant le nom de la méthode dans la classe et lors de l'appel.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Ahhh, le voilà le trouble !

    Dans mes classes de gestion xml, dans les dossiers read et mod j'avais le même nom de fichier de classe c_login_infos.php et peu importe que je lui disais de créer un objet de la classe située dans read, en fait il me créait celui de mod (déjà ouvert auparavant peut-être... ).

    En découle une pratique : ne pas appeler les fichiers de classes pareil !

    Pour résoudre complètement le trouble, c_login_infos (dans read) et devenu c_get_login_infos.php et là il m'appelle la bonne classe.

    Merci Séb de t'être penché sur le problème.

    Bonne programmation.

    Au plaisir.

    Steve.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/06/2012, 15h30
  2. Réponses: 1
    Dernier message: 18/07/2008, 06h57
  3. erreur '' n'est pas une valeur entière correcte
    Par ffxlenoir dans le forum Langage
    Réponses: 5
    Dernier message: 02/12/2005, 13h57
  4. Importer un .py qui n'est pas dans le rep courant
    Par Mr Hyde dans le forum Général Python
    Réponses: 5
    Dernier message: 25/08/2005, 17h30

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