""win.a"" <win.acc@xxxxxxxxx> wrote in message news:AANLkTinhmyybnAMtY5SX5m-FYoZTsywp1kxfnSexv8ke@xxxxxxxxxxxxxxxxx > Hi my friend,i wrote two classed on is user,the other is db .The user > have a property which from the db class object . > > > When i writing my application have both class object invoked at the > same time ,just like > $user_a = new user($para); > $db_a = new db() > > Then the problem occurs only one of the class object could work, or > $user_a or $db_a not both,What 's problem of my code > > The following is my source code: > > class db{ > /** > * Constructor > */ > > var $result; > var $conn; > > function db(){ > require_once BOC_BASE_DIR.'/config/db.config.inc'; > $this->conn = mysql_connect($db_host,$db_user,$db_pass); > //$this->conn = @mysql_connect($db_host,$db_user,$db_pass); > if (!$this->conn) { > $this->db_print_error("DB connect failed"); > } > > if (!mysql_select_db($db_name,$this->conn)) { > $this->db_print_error("DB select failed"); > } > } > > class user{ > private $u_sn; > private $u_id; > private $u_name; > private $u_sex; > private $u_image; > > //more property > > private $u_info; > > > /** > * Constructor > */ > function __construct($name){ > $sql = "select * from boc_user where u_name = '$name'"; > $u_query = new db(); > $this->u_info = array(); > $u_query->db_query($sql); > $this->u_info =$u_query->db_fetch_row(); > > $this->u_sn = $this->u_info['u_sn']; > $this->u_id = $this->u_info['u_id']; > $this->u_name = $this->u_info['u_name']; > $this->u_sex = $this->u_info['u_sex']; > > //more are give the property value > > } > > > The two class works well in the single application when only of them > are invoked ,i cost me much time to deal it > Any advice and suggestions are thankful ! > > > All you best > ------------------------ > What we are struggling for ? > The life or the life ? Hi, one way to do that: <?php class Database { private $link; function __construct() { $this->conn(); } function conn() { $this->link = mysql_connect(DB_HOST, DB_USER, DB_PASS); mysql_select_db(DB_NAME, $this->link); } function query($query) { return mysql_query($query, $this->link); } function fetch_assoc($result) { return mysql_fetch_assoc($result); } } class User { private $db; function __construct($db) { $this->db = $db; } function find_by_username($username) { $result = $this->db->query("select * from boc_user where username='$username'"); return $this->db->fetch_assoc($result); } } $db = new Database; $user = new User($db); $userdata = $user->find_by_username('username'); ?> I did not check the code, so there might be some typos. Anyway it should help you! Br Tanel -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php