Return to Snippet

Revision: 35127
at November 3, 2010 02:50 by chuisxa


Initial Code
<?php

require_once "config.php";

abstract class DataObject {

  protected $datos = array();
  
//Constructor de la clase DataObject 
  public function __construct( $datos ) {
    foreach ( $datos as $clave => $valor ) {
      #Comprueba que el valor de $clave existe en el objeto datos y si existe le añadimos su valor
      if ( array_key_exists( $clave, $this->datos ) ) $this->datos[$clave] = $valor;
    }
  }

//Recoge el nombre de un campo. Lo busca en la tabla del objeto datos y si existe devuelve su valor.
  public function getValue( $campo ) {
    if ( array_key_exists( $campo, $this->datos ) ) {
      return $this->datos[$campo];
    } else {
      die( "Campo no encontrado" );
    }
  }

//Devuelve el valor de un campo con los caracteres codificados
  public function getValueEncoded( $campo ) {
    return htmlspecialchars( $this->getValue( $campo ) );
  }

//Crea una conexión a la base de datos
  protected function connect() {
    try {
      #Los parámetros esta incluidos en el config.php
      $conn = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
      $conn->setAttribute( PDO::ATTR_PERSISTENT, true );
      $conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
    } catch ( PDOException $e ) {
      die( "Fallo en la conexión: " . $e->getMessage() );
    }

    return $conn;
  }

//Destruye la conexión creada anteriormente
  protected function disconnect( $conn ) {
    $conn = "";
  }
}

?>

Initial URL


Initial Description


Initial Title
Clase para gestionar conexión a BBDD y la recuperación de registros.

Initial Tags


Initial Language
PHP