Почему нероботает ? PHP: class mysql { public $h; public $u; public $p; public $d; public $q; public $otvet; function connect() { mysql_connect($h,$u,$p) or die("error 1 host=$h,user=$u,pass=$p"); mysql_select_db($d) or die("error 2 base=$d"); } public function query() { $o=mysql_query($q) or die("error 3"); $otvet=mysql_fetch_row($o); return $otvet; } } $h='localhost'; $u='root'; $p=''; $d='test'; $q='SELECT * FROM news'; $test=new mysql($h,$u,$p,$d,$q); print "host=$h,user=$u,pass=$p,base=$d,query=$q"; $test->connect(); $test->query(); print $otvet;
Используй __construct() и еще void __set ( string $имя, mixed $значение ) void __get ( mixed $имя ) Пример с документации PHP: <?php class Setter { public $n; private $x = array("a" => 1, "b" => 2, "c" => 3); function __get($nm) { print "ЧИтаем [$nm]\n"; if (isset($this->x[$nm])) { $r = $this->x[$nm]; print "Получили: $r\n"; return $r; } else { print "Ничего!\n"; } } function __set($nm, $val) { print "Пишем $val в [$nm]\n"; if (isset($this->x[$nm])) { $this->x[$nm] = $val; print "OK!\n"; } else { print "Всё плохо!\n"; } } } $foo = new Setter(); $foo->n = 1; $foo->a = 100; $foo->a++; $foo->z++; var_dump($foo); ?>