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 :

$this ->var souci [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Débutant Avatar de ETVigan
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Avril 2010
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 660
    Points : 170
    Points
    170
    Par défaut $this ->var souci
    Bonjour,

    J'ai un souci avec un constructer($debug) que voici:
    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
    class setScreen extends myIterator
    {	private $i , $Max ;
    // ---------------------------------------------------------------------------------------------------------------------------------------------------------- //
    protected $TBL_screen = array() ;
    private   $const = array(	SCREEN 	,	TITLE	,	SUBTITLE ,	FORM 	,	MENU	, 	SUBMENU	,	KLIMSG	, 	MUSTMBER  , BOTTOM  ) ;//      == 9
    private   $must  = array(   True    ,  	True    ,  	False    ,  True    ,   True    ,   False   ,   True 	,   True 	  , false	) ;
    private   $Ok = array() ;
    // ---------------------------------------------------------------------------------------------------------------------------------------------------------- //
    /**
    * Constructor
    *
    */	
    	function __construct($debug=false)
    	{	$this->debug       = $debug        ;
    				
    		if ($this->debug)
    			print("+++++++++++construct[setScreen] starting" . CRLF) ;
    Constructeur que j'appelle ici:

    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
    <?php
    /* ------------------------------------------------------------------------------------------------------------------------------ */
    require_once $_SERVER['DOCUMENT_ROOT'] . "/class/setScreen.php";
    /* ------------------------------------------------------------------------------------------------------------------------------ */
    /**
    * Exécution: chaque page aura ce même style d'instruction
    *
    */	
    $obj = new setScreen($debug=false) ;
    $obj->__setParam(SCREEN   , "index"                               									) ;
    $obj->__setParam(TITLE    , "Bienvenue sur le site de " . $site . "!" 								) ;
    $obj->__setParam(SUBTITLE , "Les non-membres dsireux de nous contacter sont pris de le faire"		) ;
    $obj->__setParam(FORM     , "index" 																) ;
    $obj->__setParam(MENU 	  , "index"																	) ;
    $obj->__setParam(SUBMENU  , "index"																	) ;
    $obj->__setParam(KLIMSG   ," Bienvenue sur le site de " . $site . "!"								) ; 
    $obj->__setParam(MUSTMBER , 0																		) ;
    $obj->execute() ;
    ?>
    Dans cette classe, pour raison de debugging, lors de la création, j'ai toujours
    de lignes du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    	function __construct($debug=false)
    	{	$this->debug       = $debug        ;
    				
    		if ($this->debug)
    			print("+++++++++++construct[setScreen] starting" . CRLF) ;
    		$this->Max   = count($this->const) ; 
    //		$this->Ok = new myIterator() ; 
    			
    		try {	
    				
    				if ($this->debug)
    					print("+++++++++++construct[setScreen] started" . CRLF) ;
    Varaible $debug qui est bien à false, non ?

    Et pourtant j'ai à mon écran:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    +++++++++++construct[setScreen] starting
    +++++++++++construct[setScreen] started
    +++++++++++executing[setScreen] started
    Going to Skeleton ......
    Je dois dire que j'y perds mon PHP pour l'instant......

    Bonne chance..... et Grand merci
    Esteban

  2. #2
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Salut,

    ton appel :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $obj = new setScreen($debug=false) ;

    me semble bizarre, si tu veux lui transmettre la valeur false, ne mets rien, ton constructeur par défaut lui affectera false.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $obj = new setScreen() ;
    // --- $debug vaudra false

  3. #3
    Débutant Avatar de ETVigan
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Avril 2010
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 660
    Points : 170
    Points
    170
    Par défaut Et bien non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    /* ------------------------------------------------------------------------------------------------------------------------------ */
    require_once $_SERVER['DOCUMENT_ROOT'] . "/class/setScreen.php";
    /* ------------------------------------------------------------------------------------------------------------------------------ */
    /**
    * Exécution: chaque page aura ce même style d'instruction
    *
    */	
    $obj = new setScreen() ;
    $obj->__setParam(SCREEN   , "index"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    +++++++++++construct[setScreen] starting
    +++++++++++construct[setScreen] started
    +++++++++++executing[setScreen] started
    Going to Skeleton ......
    Si j'ai écrit ce post, c bien parce que je ne trouvais pas.... si tu veux les sources complètes......

    Mais je trouve cela plus que bizarre
    Esteban

  4. #4
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut On ne sait jamais...
    Et comme ca ?

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    try {	
    	if($this->debug === true)
    		print("+++++++++++construct[setScreen] started" . CRLF) ;
    }

    Es tu sur de plus, de faire qu'un seul appel à ce constructeur ?

    PS: tu peux utiliser PHP_EOL plutot que ta constante CRLF

  5. #5
    Membre confirmé
    Avatar de FERDIKAM
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2005
    Messages : 123
    Points : 616
    Points
    616
    Par défaut
    essaie par exemple de déclarer une variable protected ou private $debug avant le constructeur

  6. #6
    Débutant Avatar de ETVigan
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Avril 2010
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 660
    Points : 170
    Points
    170
    Par défaut debug false ou true
    A tous les 2, il doit y avoir autre chose car je viens d'essayer vos 2 suggestions, sans changement? J'ai fait le changement inverse et pas de changement non plus.
    Mais mais affichages n'y étaient plus donc.... cela doit venir d'autre part, je creuse...

    Merci quand même !
    Esteban

  7. #7
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Salut,

    T'as juste pas déclaré $debug comme attribut de ta classe donc il est toujours NULL donc if($this->debug) renvoie false...

  8. #8
    Débutant Avatar de ETVigan
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Avril 2010
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 660
    Points : 170
    Points
    170
    Par défaut $Debug true false
    Salut Thomas

    Si je te comprends bien, ce que je n'ai pas fait, c'est...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    class Toto
    {    private $debug ;
    
    
    }
    Tu parles de cette déclaration ?

    Est-ce tu connais qlqchose en ce qui concerne UTF8 et unicode ?
    Car j'ai un blèm et ouvert une discussion à ce sujet car cela devient bloquant pour moi, merci de toute façon
    http://www.developpez.net/forums/d94...n/#post5323299 Merci de regarder..... et ne te sens pas obligé :
    Esteban

  9. #9
    Débutant Avatar de ETVigan
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Avril 2010
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 660
    Points : 170
    Points
    170
    Par défaut debug true _ false
    Merci Thomas, c ok ton truc !
    Esteban

  10. #10
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Si je te comprends bien, ce que je n'ai pas fait, c'est...
    Code :

    class Toto
    { private $debug ;


    }

    Tu parles de cette déclaration ?
    Exactement

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

Discussions similaires

  1. soucis sur $this->layout()->content;
    Par florianjoy54 dans le forum Zend Framework
    Réponses: 3
    Dernier message: 27/07/2011, 23h07
  2. [POO] [objet php 5] petit soucis avec $this
    Par estacado dans le forum Langage
    Réponses: 4
    Dernier message: 22/09/2006, 10h51
  3. [File et Directory ListBox] Soucis de filtre
    Par Mercilius dans le forum Composants VCL
    Réponses: 8
    Dernier message: 04/04/2003, 16h17
  4. Réponses: 4
    Dernier message: 16/02/2003, 12h16
  5. Réponses: 2
    Dernier message: 03/10/2002, 17h24

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