ccc

Bases de datos 3: Cómo conectar a la base de datos

// En nuestra clase clase_db añadimos la siguiente función
<?php
public function conectar() {
  if(!$this->handler){
    try {
      $dsn = $this->driver;
      $dsn .= ':host='.$this->hostname;
      $dsn .= ';dbname='.$this->databasename;
      $dsn .= ';user='.$this->username;
      $dsn .= ';password='.$this->password;

      if($this->port !== null) {
        $dsn .= ';port='.$this->port;
      }

     $this->handler = new PDO($dsn, $this->username, $this->password);
     $this->handler->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
     if($this->driver == 'mysql') {
       $this->handler->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
     }
    }
    catch(PDOException $e) {
                throw new SpoonDatabaseException('Imposible abrir la BD', 0, $this->password);
    }
   }
   return $this->handler;
}
?>

<?php
// Ahora desde cualquier otro fichero PHP podemos requerir la clase de la BD y usar esa función
require("clase_db.php");
$mi_clase = new clase_db(); // en $mi_clase ya tenemos una instancia de esa base de datos con la q trabajar
$mi_clase ->conectar(); // ya estamos conectados a la BD
...
unset($mi_clase); // Cuando no vayamos a usarlo más la eliminamos del todo
?>

Si tienes alguna duda o problema en PHP haz la pregunta en el comentario de esta entrada e intentaré responderte lo antes posible

No hay comentarios:

Publicar un comentario