[PHP-DB] passing a mysqli object via globals
warn: already posted in general with no response... maybe is too basic.. but I RTFM and still is not clear to me what I am doing wrong I want to open a database connection at program initialization and use that very same connection via globals initilizating ( loading from db) other objects. Basically index.php require_once ('file.php'); $db=new mysqli(host,us,pass,db); if(mysqli_connect_errno()){ die('errordb conex'); } switch ($var){ display1: $obj=new obj_x(); $obj-load(); $obj-display(); break; display2: $obj=new obj_y(); $obj-load(); $obj-display(); break; } -- class file.php class obj_x{ function load(){ globals $db; $sql=select ); $ret=$db-query($sql); // XX ... } } fails at XX with Warning: mysqli::query() [function.mysqli-query]: Couldn't fetch mysqli in class file line XX Any hints ??. I am using php 5.1.6 with linux/ubuntu. Thanks. JCG -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DB] Re: passing a mysqli object via globals
however this will work... p1.inc 1 ?php 2 3 class dbb{ 4 5 var $var=10; 6 7function fun2(){ 8 return $this-var;; 9} 10 } 11 12 class obj { 13var $obj2=20; 14 15function f1(){ 16 global $db; 17 18 echo \n.$db-fun2()*$this-obj2.\n; 19} 20 } 21 ? 1 #!/usr/bin/php -q 2 3 ?php 4 5 require_once('p1.inc'); 6 7 $db= new dbb(); 8 9 10 $obj = new obj(); 11 12 $obj-f1(); 13 14 ? -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Re: passing a mysqli object via globals
Hopefully your only issue is the keyword global versus globals ? -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Re: passing a mysqli object via globals
Dee Ayy wrote: Hopefully your only issue is the keyword global versus globals ? Not sure what you mean. global $db should bring to local scope a reference to the object that has the data base connection. PHP complaints that it cannot access properties or methods of that object in the obj/f1/ scope I tried using the $GLOBALS['db'] with same results. really lost... -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Re: passing a mysqli object via globals
On Dec 3, 2007 10:26 AM, julian [EMAIL PROTECTED] wrote: Dee Ayy wrote: Hopefully your only issue is the keyword global versus globals ? Not sure what you mean. global $db should bring to local scope a reference to the object that has the data base connection. PHP complaints that it cannot access properties or methods of that object in the obj/f1/ scope I tried using the $GLOBALS['db'] with same results. In the one that failed, you used the invalid keyword globals. In the one that worked, you used the valid keyword global. When I said hopefully, I was wondering if you could use $GLOBALS['db'] but there may be other issues since you said that also failed. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Re: passing a mysqli object via globals
Dee Ayy wrote: On Dec 3, 2007 10:26 AM, julian [EMAIL PROTECTED] wrote: Dee Ayy wrote: Hopefully your only issue is the keyword global versus globals ? Not sure what you mean. global $db should bring to local scope a reference to the object that has the data base connection. PHP complaints that it cannot access properties or methods of that object in the obj/f1/ scope I tried using the $GLOBALS['db'] with same results. In the one that failed, you used the invalid keyword globals. In the one that worked, you used the valid keyword global. When I said hopefully, I was wondering if you could use $GLOBALS['db'] but there may be other issues since you said that also failed. no worries I give up. It is really weird I know Hope some day I will get enlighted. In one file, any method within a class is happy with the global $db...on a different (same file !!!) class no method is happy with accessing $db via global... I will open and close db connection in each method that it needs... awkward...but works. Thanks for your time. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Re: passing a mysqli object via globals
no worries I give up. It is really weird I know Hope some day I will get enlighted. In one file, any method within a class is happy with the global $db...on a different (same file !!!) class no method is happy with accessing $db via global... So you confirmed that you are using global instead of what you posted to the list as globals? -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] passing a mysqli object via globals
julian wrote: warn: already posted in general with no response... maybe is too basic.. but I RTFM and still is not clear to me what I am doing wrong I want to open a database connection at program initialization and use that very same connection via globals initilizating ( loading from db) other objects. Basically index.php require_once ('file.php'); $db=new mysqli(host,us,pass,db); The order of this stuff matters. $db isn't set up when you include file.php, hence why it's not an object when you try to use it. move the $db = .. line above the file.php reference. [ I'm sure you would have received a notice or warning or something if you had error_reporting set to E_ALL and display errors on ] -- Postgresql php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DB] Ordering a varchar field in mysql
*Questions on PHP* In one of our tables, one of the field is acc_no, we had given the data type as varchar, since it could take any alpha-numeric values. In viewing this, we used 'order by acc_no.' The sequence of records shown was 1,10,100,1000,A1, A10, A100, etc. whereas we want the sequence to be 1,2,3,4,etc. for all the numeric values followed by alpha-numeric values A1, A2, A3, etc. Can someone please give us the code for this type of ordering? -- Vaibhav Informatics, 109 Vasant Plaza, Munirka, Near Subway, New Delhi-110 067 Ph: 011-26194466 Email :[EMAIL PROTECTED]