Tema: amateur POO
Ver Mensaje Individual
  #15 (permalink)  
Antiguo 30/07/2012, 14:35
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: amateur POO

mira gatorv al final lo he dejado asi y funciona sin problemas aun me falta añadirle cosillas y mas metodos poco mas pero esta es la base , como ves creo un constructor y traigo del config los datos y ya tengo los atributos dentro para todos los metodos que incluya ademas de la conexion , en el metodo connect hago la conexion y ademas creo el atributo mysqli para tenerlo funcional en los demas metodos , dime si esta bien planteado o cometi algun error , por otro lado implemento una interface ya que esto es pensando el el futuro si deseo añadir algun driver mas de base de datos entonces tengo una interface que todos los drivers deben de cumplir , por ejemplo connect() y close()

Código PHP:
Ver original
  1. <?php
  2.  
  3. class mysqlidriver implements database
  4. {
  5.   public function __construct()
  6.     {
  7.         require_once '/application/core/config.ini';
  8.  
  9.         $this->server   = $server;
  10.         $this->username = $username;
  11.         $this->password = $password;
  12.         $this->database = $database;
  13.     }
  14.  
  15.     public function connect()
  16.     {
  17.         $mysqli = new mysqli($this->server,$this->username,$this->password,$this->database);
  18.  
  19.         $this->mysqli = $mysqli;
  20.     }
  21.  
  22.     public function close()
  23.     {
  24.         $this->mysqli->close();
  25.     }
  26. }
  27.  
  28.  
  29. ?>

o esta otra forma que acabo de crear no se cual es mas correcta

Código PHP:
Ver original
  1. <?php
  2.  
  3. require_once '/config.ini';
  4.  
  5. class mysqlidriver{
  6.  
  7. public $server   = 'localhost';
  8. public $username = 'root';
  9. public $password = '';
  10. public $database = 'test';
  11.  
  12.     public function __construct($username=NULL,$password=NULL,$database=NULL,$server=NULL)
  13.     {
  14.         $this->server   = is_null($server)   ? $this->server   : $server ;
  15.         $this->username = is_null($username) ? $this->username : $username ;
  16.         $this->password = is_null($password) ? $this->password : $password ;
  17.         $this->database = is_null($database) ? $this->database : $database ;
  18.     }
  19.      
  20.     public function connect()
  21.     {
  22.         $mysqli = new mysqli($this->server,$this->username,$this->password,$this->database);
  23.      
  24.         $this->mysqli = $mysqli;
  25.     }
  26.      
  27.     public function close()
  28.     {
  29.         $this->mysqli->close();
  30.     }
  31. }
  32.      
  33.      $db = new mysqlidriver($username,$database,$password,$server);
  34.      
  35. ?>

Última edición por webankenovi; 30/07/2012 a las 15:04