Sorry I still have a problem. I separete files belows; -------------My.php------- <?php Class My{ private $word; function __construct($getword){ $this->word=$getword; } public function buff(){ echo $this->word."<br />"; } } ?> ---------------------------------- --------------b.php------------ <?php function __autoload($class_name) { include_once $class_name . '.php'; } $objref=new My("Good"); $objref->buff(); ?> -------------------------------- --------------c.php---------- <?php function __autoload($class_name) { include_once $class_name . '.php'; } $obj=new My("Hello"); $obj->buff(); ------------------------------ First I execute c.php Then I got "Hello" Next I execute b.php Then I got "Good" I would like to get to execute b.php Then I got "Hello" and "Good" <-------------I need The problem is how to get parameter from c.php to b.php. Please do help me! Regards, Yui 2008/6/4 Jim Lucas <lists@xxxxxxxxx>: > Yui Hiroaki wrote: >> >> The code is blelow; >> -----------------b.php---------------- >> <?php >> function __autoload($class_name) { >> include_once $class_name . '.php'; >> } >> >> >> $objref=new My("Good"); >> $objref->buff(); >> ?> >> ----------------------------------- >> >> ----------My.php-------------- >> <?php >> $obj=new My("Hello"); >> $obj->buff(); >> >> >> Class My{ >> private $word; >> function __construct($getword){ >> $this->word=$getword; >> } >> public function buff(){ >> echo $this->word."<br />"; >> } >> } >> ?> >> -------------------------------------- >> >> on website, first it execute My.php , then execute b.php >> >> So it will show blelow; >> Hello(when excute My.php) >> >> >> Hello(when excute from b.php) >> Good(when excute from b.php) >> >> >> >> I do not need "Hello" twice >> >> >> I would get >> >> Hello(when excute My.php) >> Good(when excute from b.php) >> >> >> >> Please do help me! >> >> Regards, >> Yui >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> 2008/6/3 Thijs Lensselink <dev@xxxxxxxx>: >>> >>> Quoting Yui Hiroaki <hiroakiyui@xxxxxxxxx>: >>> >>>> Please look at my.php >>>> >>>> my.php load >>>> $obj=new My("Hello"); >>>> $obj->buff(); >>>> >>>> so, if a.php load, it absolutely got "hello" in load b.php >>>> >>>> Regards, >>>> Yui >>>> >>>> 2008/6/3 Thijs Lensselink <dev@xxxxxxxx>: >>>>> >>>>> Quoting Yui Hiroaki <hiroakiyui@xxxxxxxxx>: >>>>> >>>>>> Thank you for a good suggest! >>>>>> >>>>>> Somehow, I have to execute my.php also. >>>>>> This program have to run. >>>>>> 1)My.php >>>>>> 2)b.php >>>>>> >>>>>> My.php show "Hello" -> it is OK, >>>>>> b.php shows >>>>>> "Hello" >>>>>> "Good" >>>>>> >>>>>> it is NOT good. I need to get only "Good" >>>>>> >>>>>> >>>>>> Please give me a suggestion. >>>>>> >>>>>> Regards, >>>>>> Yui >>>>>> 2008/6/3 James Dempster <letssurf@xxxxxxxxx>: >>>>>>> >>>>>>> I suggest you don't put code other than class structures in class >>>>>>> files. >>>>>>> Also don't execute My.php just execute b.php which though __autoload >>>>>>> includes My.php. >>>>>>> >>>>>>> -----------------b.php---------------- >>>>>>> <?php >>>>>>> function __autoload($class_name) { >>>>>>> include_once $class_name . '.php'; >>>>>>> } >>>>>>> >>>>>>> $obj=new My("Hello"); >>>>>>> $obj->buff(); >>>>>>> >>>>>>> $objref=new My("Good"); >>>>>>> $objref->buff(); >>>>>>> >>>>>>> ----------------------------------- >>>>>>> >>>>>>> ----------My.php-------------- >>>>>>> <?php >>>>>>> >>>>>>> Class My{ >>>>>>> private $word; >>>>>>> function __construct($getword){ >>>>>>> $this->word=$getword; >>>>>>> } >>>>>>> public function buff(){ >>>>>>> echo $this->word."<br />"; >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> >>>>>>> /James Dempster >>>>>>> >>>>>>> On Tue, Jun 3, 2008 at 9:17 AM, Yui Hiroaki <hiroakiyui@xxxxxxxxx> >>>>>>> wrote: >>>>>>>> >>>>>>>> HI! >>>>>>>> >>>>>>>> I had mistake in code in php. >>>>>>>> >>>>>>>> When I excute My.php, it say "Hello" >>>>>>>> When I excute b.php, it say >>>>>>>> Hello >>>>>>>> Good >>>>>>>> >>>>>>>> I would like to execute b.php and show >>>>>>>> only "Good" >>>>>>>> >>>>>>>> If you know it ,please teach me! >>>>>>>> >>>>>>>> Here is code below; >>>>>>>> >>>>>>>> -----------------b.php---------------- >>>>>>>> <?php >>>>>>>> function __autoload($class_name) { >>>>>>>> include_once $class_name . '.php'; >>>>>>>> } >>>>>>>> >>>>>>>> >>>>>>>> $objref=new My("Good"); >>>>>>>> $objref->buff(); >>>>>>>> ?> >>>>>>>> ----------------------------------- >>>>>>>> >>>>>>>> ----------My.php-------------- >>>>>>>> <?php >>>>>>>> $obj=new My("Hello"); >>>>>>>> $obj->buff(); >>>>>>>> >>>>>>>> >>>>>>>> Class My{ >>>>>>>> private $word; >>>>>>>> function __construct($getword){ >>>>>>>> $this->word=$getword; >>>>>>>> } >>>>>>>> public function buff(){ >>>>>>>> echo $this->word."<br />"; >>>>>>>> } >>>>>>>> } >>>>>>>> ?> >>>>>>>> -------------------------------------- >>>>>>>> Regards, >>>>>>>> Yui >>>>>>>> >>>>>>>> >>>>>>>> 2008/6/3 James Dempster <letssurf@xxxxxxxxx>: >>>>>>>>> >>>>>>>>> I don't see how it's possible for you to get "Hello" after "Good", >>>>>>>>> when >>>>>>>>> the >>>>>>>>> file that cause's "Hello" is required to do "Good" >>>>>>>>> >>>>>>>>> /James >>>>>>>>> >>>>>>>>> On Mon, Jun 2, 2008 at 2:00 PM, Yui Hiroaki <hiroakiyui@xxxxxxxxx> >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Please take a look at code. >>>>>>>>>> >>>>>>>>>> --------a.php-------- >>>>>>>>>> >>>>>>>>>> $obj=new my("Hello"); >>>>>>>>>> $obj->buff(); >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Class my{ >>>>>>>>>> >>>>>>>>>> private $word; >>>>>>>>>> function __construct($getword){ >>>>>>>>>> $this->word=$getword; >>>>>>>>>> } >>>>>>>>>> public function buff(){ >>>>>>>>>> echo $this->word."<br />"; >>>>>>>>>> } >>>>>>>>>> -------------------------------------- >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -----b.php----------------------- >>>>>>>>>> >>>>>>>>>> function __autoload($class_name) { >>>>>>>>>> include_once $class_name . '.php'; >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> $objref=new my("Good"); >>>>>>>>>> $objref->buff(); >>>>>>>>>> -------------------------------------------- >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> I get an Echo; >>>>>>>>>> >>>>>>>>>> Good >>>>>>>>>> Hello >>>>>>>>>> Hello >>>>>>>>>> >>>>>>>>>> I do not need to get Hello twice. >>>>>>>>>> >>>>>>>>>> When I b.php , $obj=new my("Hello") is loaded. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Do you have any adia to avoid load $obj in a.php twice? >>>>>>>>>> >>>>>>>>>> Regards, >>>>>>>>>> Yui >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> PHP General Mailing List (http://www.php.net/) >>>>>>>>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>>>>>>>> >>>>>>>>> >>>>>>> >>>>>> -- >>>>>> PHP General Mailing List (http://www.php.net/) >>>>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>>>> >>>>>> >>>>> >>>>> If you only want to see "Good" Then don't run it twice. >>>>> Take James's suggestion and try it again: >>>>> >>>>> -----------------b.php---------------- >>>>> <?php >>>>> function __autoload($class_name) { >>>>> include_once $class_name . '.php'; >>>>> } >>>>> >>>>> $objref=new My("Good"); >>>>> $objref->buff(); >>>>> >>>>> ----------------------------------- >>>>> >>>>> ----------My.php-------------- >>>>> <?php >>>>> >>>>> Class My{ >>>>> private $word; >>>>> function __construct($getword){ >>>>> $this->word=$getword; >>>>> } >>>>> public function buff(){ >>>>> echo $this->word."<br />"; >>>>> } >>>>> } >>>>> >>>>> >>> I don't think i understand you fully. Or you're trying to make it to >>> complicated. >>> >>> You have a class in "My.php" : >>> >>> Class My{ >>> private $word; >>> >>> function __construct($getword){ >>> $this->word=$getword; >>> } >>> >>> public function buff(){ >>> echo $this->word."<br />"; >>> } >>> } >>> >>> And a script that creates an instance of My "b.php" : >>> >>> function __autoload($class_name) { >>> include_once $class_name . '.php'; >>> } >>> >>> $obj=new My("Hello"); >>> $obj->buff(); >>> >>> $objref=new My("Good"); >>> $objref->buff(); >>> >>> The output will be "Hello<br/>Good<br/>". because you call it two times. >>> So >>> if you only want to see "Good". Then you change "b.php" to look like >>> this: >>> >>> function __autoload($class_name) { >>> include_once $class_name . '.php'; >>> } >>> >>> $objref=new My("Good"); >>> $objref->buff(); >>> >>> -- >>> PHP General Mailing List (http://www.php.net/) >>> To unsubscribe, visit: http://www.php.net/unsub.php >>> >>> >> > > You are confusing the terms execute, with include. > > If you are including a script/file and you only want it included once, then > you need to use the *_once constructs. I don't call them functions because > they are not functions. > > include 'filename'; > include_once 'filename'; > require 'filename'; > require_once 'filename'; > > if you use the *_once calls, your script will only ever be included one > time. > > If you mix them, then you will have problems. > > your class scripts should be setup to where there is only one class per file > and that nothing is "executed" from that file. It should only be included. > Then the file(s) that include your class should do the work of initializing > and using the class. > > > > -- > Jim Lucas > > "Some men are born to greatness, some achieve greatness, > and some have greatness thrust upon them." > > Twelfth Night, Act II, Scene V > by William Shakespeare > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php