[PHP-DB] passing a mysqli object via globals

2007-12-03 Thread julian
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

2007-12-03 Thread julian



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

2007-12-03 Thread Dee Ayy
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

2007-12-03 Thread julian

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

2007-12-03 Thread Dee Ayy
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

2007-12-03 Thread julian

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

2007-12-03 Thread Dee Ayy
 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

2007-12-03 Thread Chris

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

2007-12-03 Thread Vaibhav Informatics
*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]