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 :

Fonctions ignorées


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 48
    Points : 25
    Points
    25
    Par défaut Fonctions ignorées
    Bonsoir,

    je suis désespéré et je voulais savoir si vous avez deja eu mon probleme. Je développe avec Wamp Server, jusque la tout va bien. Dans mon MVC perso, j'appelle une page de configuration dans laquel il y a une class, et des fonctions comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php 
    date_default_timezone_set('Europe/Paris'); // Placé ici cela fonctionne, mais pas si je l'inclue dans conf.php ci-dessous !!!!
     
    if(is_file('config/conf.php')) { require_once('config/conf.php'); } 
     
    /* Le fichié est bien appelé sauf que dans celui la certaine fonction sont "chargées et pas d'autres" */
     
    ?>
    Mes fonctions :
    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
     
    ...
     
    class Conf { public function __construct() { date_default_timezone_set('Europe/Paris'); } }
     
    ...
     
    function arrayLastKey(array $array) { // Fonctionne +.+
    	end($array); // move the internal pointer to the end of the array
    	$lastKey = key($array);
    	reset($array);
    	return $lastKey;
    }
     
    function is_multi_array(array $array) { //Call to undefined function
        return (count($array) != count($array, 1));
    }
     
    ...
    La seconde fonction "is_multi_array()" [que j'ai ajouté plus tard] n'existe pas si je l'appelle juste apres le require vu en haut. De meme, que ma class est bien chargé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    class_exists('Conf'); // returns true
    et que le constructeur de ma class est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date_default_timezone_set('Europe/Paris');
    mais ca ne fonctionne pas.

    Je suis complètement désorienté. Comment est-ce possible ? J'ai l'impression que seul le vieux code fonctionne et pas le nouveau. J'ai redémarré Apache mais ca ne fonctionne pas... je vais devenir fou

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    quel est le message d'erreur?
    qui héberge? quelle est la sortie de phpversion()?

    pourquoi tu appelles fonction des méthodes?

    Est ce que tes classes sont bien définies?

    que donne l'appel de cette fonction:
    http://php.developpez.com/telecharge...-l-etat-de-PHP

    merci
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  3. #3
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    toi tu n'utilises pas un éditeur avancé. essaie Eclipse ou Aptana.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    class Conf { public function __construct() { date_default_timezone_set('Europe/Paris'); } }
    ta classe ne comporte qu'une seule méthode, la surcharge du contructeur... lalala
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 48
    Points : 25
    Points
    25
    Par défaut
    Merci pour vos réponse, je vais essayer de vous expliquer tout ca :

    1 - J'utilise Sublime Text 2, car c'est un MVC perso...
    2 - En ce qui concerne la surcharge de mon constructeur, c'etait juste pour teste, si je place
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date_default_timezone_set('Europe/Paris');
    En dehos de la classe mais dans le fichié conf.php, cela ne fonctionne quand meme pas.

    3- Il n'y a aucun message d'erreur, le systeme prend en compte ce qu'il veut.
    Si j'appelle la fonction ArrayLastKey() (par exemple) j'aurai "Parametre 1 must be an array" si j'appelle is_multi_array(), il va me dire fonction inconnu.

    4 - j'ai mis des fonction en dehors de la Class, alors c'est peut etre ca mon probleme ? Donc j'ai pas de méthode, sauf le constructeur. J'ai essayer d'utiliser le constructeur parce que la class est bien appellée [elle ne contient que des variable static]

    J'ai un fichier qui contient, une classe, des fonction, des variables, des constantes. conf.php

    La classe est appellé mais la fonction du constructeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date_default_timezone_set()
    ne se lance pas. et les fonction annexe marche une fois sur 2

    5 - enfin ta fonction me retourne un resultat trop grand mais concretement il est affiché ce que j'ai constaté :
    NOTE : elle ne fonctionne que si je la met dans conf.php a coté d'autres fonctions qui sont appellées et qui elles, marchent
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
     
    //Informations
     Tue, 12 Mar 2013 13:13:38 +0000 
    have fun! The script is runned by php version 5.4.3
     
    //Etat: Pile d'appel
    Array
    (
        [0] => Array
            (
                [file] => C:\Websites\education-fonctionnelle\core\index.php
                [line] => 46
                [function] => describeState
                [args] => Array
                    (
                    )
     
            )
     
    )
     
    //Sessions marchent
     
    Input: Session
    Array
    (
        [uniqid] => 513dfa65f0262
        [user] => 18KGgGoLUfCEoRySrfH9wz4i4uhateivzwT0MNcpQcc=
    )
     
    // la fin des class, on voit bien que Conf existe, ainsi que d'autres fichiés inclus
     
        [125] => mysqli_driver
        [126] => mysqli
        [127] => mysqli_warning
        [128] => mysqli_result
        [129] => mysqli_stmt
        [130] => Conf
        [131] => Dispatcher
        [132] => Router
        [133] => Request
        [134] => Connector
        [135] => Manager
    )
     
    [user] => Array
            (
                [0] => describestate
                [1] => chargerclasse
                [2] => geturlinfo
                [3] => reportmsg
                [4] => encrypt
                [5] => decrypt
                [6] => arraylastkey
                [7] => sortdate //Des autres fonctions [pas method] sont manquantes alors qu'elles sont dans le meme fichié.
            )
    Merci infiniment !

Discussions similaires

  1. fonction : ifstream::ignore()
    Par jmelyn dans le forum SL & STL
    Réponses: 2
    Dernier message: 03/12/2007, 11h50
  2. fonction submit() ignorée
    Par ozzmax dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 08/08/2006, 15h58
  3. Fonction javascript ignorée
    Par cell dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 10/07/2006, 09h09
  4. appel de fonction ignorée
    Par cell dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/06/2006, 12h06
  5. Le linker ignore les fonctions non implémentées
    Par Rodrigue dans le forum C++Builder
    Réponses: 5
    Dernier message: 02/03/2005, 13h31

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