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


/ Published in: PHP
Save to your folder(s)



Copy this code and paste it in your HTML
  1. <?php
  2.  
  3. require_once "config.php";
  4.  
  5. abstract class DataObject {
  6.  
  7. protected $datos = array();
  8.  
  9. //Constructor de la clase DataObject
  10. public function __construct( $datos ) {
  11. foreach ( $datos as $clave => $valor ) {
  12. #Comprueba que el valor de $clave existe en el objeto datos y si existe le añadimos su valor
  13. if ( array_key_exists( $clave, $this->datos ) ) $this->datos[$clave] = $valor;
  14. }
  15. }
  16.  
  17. //Recoge el nombre de un campo. Lo busca en la tabla del objeto datos y si existe devuelve su valor.
  18. public function getValue( $campo ) {
  19. if ( array_key_exists( $campo, $this->datos ) ) {
  20. return $this->datos[$campo];
  21. } else {
  22. die( "Campo no encontrado" );
  23. }
  24. }
  25.  
  26. //Devuelve el valor de un campo con los caracteres codificados
  27. public function getValueEncoded( $campo ) {
  28. return htmlspecialchars( $this->getValue( $campo ) );
  29. }
  30.  
  31. //Crea una conexión a la base de datos
  32. protected function connect() {
  33. try {
  34. #Los parámetros esta incluidos en el config.php
  35. $conn = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
  36. $conn->setAttribute( PDO::ATTR_PERSISTENT, true );
  37. $conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
  38. } catch ( PDOException $e ) {
  39. die( "Fallo en la conexión: " . $e->getMessage() );
  40. }
  41.  
  42. return $conn;
  43. }
  44.  
  45. //Destruye la conexión creada anteriormente
  46. protected function disconnect( $conn ) {
  47. $conn = "";
  48. }
  49. }
  50.  
  51. ?>

Report this snippet


Comments

RSS Icon Subscribe to comments

You need to login to post a comment.