ya miren mi codigo es asi
Claro las funciones son muy basicas pero para ejemplo vale
Mi Singleton
Código PHP:
<?
class Singleton {
public static $config;
private static $_instance = null;
private function __construct() {}
public static function getInstance() {
if( !self::$_instance instanceof self ) {
self::$_instance = new self();
}
return self::$_instance;
}
public function setParam($option,$value) {
$this->config[$option] = $value;
}
public function getParam($option) {
return $this->config[$option];
}
}
?>
Mi Clase DB
Código PHP:
<?
class DB Extends Singleton{
public function connect() {
$obj = Singleton::getInstance();
$r = &$obj->config;
extract($r, EXTR_SKIP);
$this->dbh = mysql_connect($dbhost,$dbuser,$dbpwd);
if ( ! $this->dbh ){
echo "error";
}
$this->select($dbname);
}
public function select($db){
mysql_select_db($db,$this->dbh);
}
public function query($query){
$this->result = mysql_query($query,$this->dbh);
}
}
?>
mi Index
Código PHP:
<?
include 'singleton.php';
include 'db.php';
$obj = Singleton::getInstance();
/*configuracion*/
$obj->setParam("dbuser","root");
$obj->setParam("dbhost","localhost");
$obj->setParam("dbpwd","");
$obj->setParam("dbname","wp");
$mysql = DB::getInstance();
$mysql->connect();
$result = $mysql->query("SELECT * FROM wp_users");
$row = mysql_fetch_row($result);
echo $row[0];
echo $row[1];
?>
pero me bota este error
Fatal error: Call to undefined method Singleton::connect()
Claro Singleton no tiene la funcion connect pero yo llamo
Código PHP:
$mysql->connect();
otra cosa el
Código PHP:
public function connect() {
$obj = Singleton::getInstance();
lo puedo cambiar por
Código PHP:
public function connect() {
$obj = parent::getInstance();
creo ke funcionaria pero no me rula el codigo...
probe quitandole el
Extends Singleton y instanciando db en ves de
Código PHP:
$mysql = DB::getInstance();
//por
$mysql = new DB;
pero yo quiero eredarlo no se puede?
yo pienso que es tendria que llamarlo con self pero nos e como