Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Access / Base de Datos / Descargas / PHP / ODBC acces y php POO

ODBC acces y php POO

Autor jc mouse miércoles, febrero 22, 2012

En este tuto crearemos una clase para conectarse con una base de datos Access y ademas se implementan dos metodos para realizar consultas e insertar registros desde PHP.

Antes de comenzar con PHP debemos tener una base de datos.

Necesitamos crear una base de datos en Acces con extensión *.mdb, llama a esta base de datos «demo.mdb», debes añadir una tabla a la base de datos (Nombre tabla: tabla), y a esta tabla añades 2 campos de tipo String (Campo 1: Nombre, Campo 2: Correo), añade algunos valores. Este archivo MDB debe estar en la misma carpeta que los archivos php que crearemos.

1. Crea un nuevo archivo PHP llamado «msaccess.class.php«, el código de la clase es:

<?php
/* CLASE PARA LA CONEXION DE PHP CON ACCES 2003 */
class msaccess {
 # variable para almacenar la conexion
 private $conexion;  
 #Base de datos access 2003
 private  $name = 'demo.mdb';

    /* METODO PARA CONECTAR CON LA BASE DE DATOS*/
 public function conectar()
 {
    # Directorio actual de la base de datos
    $db = getcwd()."\\".$this->name;
    # Se forma la cadena de conexión
    $dsn = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=".$db;
    # Se realiza la conexón con Access -> Si hay error se detiene todo
    $this->conexion = odbc_connect( $dsn, '', '' ) or die( odbc_errormsg() );
     echo 'Conexión a ['.$this->name.' ]: Establecida';
 }

 /* METODO PARA CERRAR LA CONEXION A LA BASE DE DATOS*/ 
 public function desconectar()
 {
  odbc_close( $this->conexion );
  echo 'Conexion a ['.$this->name.'] : Terminado ';
 }

 /*METODO PARA HACER UN INSERT
 * INPUT: 
 * $tabla -> Nombre tabla 
 * $campos -> String con nombres de los campos -> campo1, campo2, campo_n
 * $valores -> Valores a insertar -> 'Valor1','Valor2','Valor_n'
 * OUTPUT:
 * boolean -> TRUE/FALSE: 
 */
 function insert($tabla, $campos, $valores){
  #se forma la instruccion SQL 
  $q = 'INSERT INTO '.$tabla.' ('.$campos.') VALUES ('.$valores.')';
  $resultado = $this->consulta($q);
  if($resultado) return true;
  else return false;
 }   

 /* METODO PARA REALIZAR UNA CONSULTA 
 * INPUT: 
 * $q -> consulta SQL
 *OUTPUT: 
 * $result
 */
 public function consulta($q)
 {
    $resultado = odbc_exec( $this->conexion, $q) or die( odbc_errormsg() );
    return $resultado; 
 }

}//fin clase
?>

Esta clase implementa los metodos para la conexión con Acces mediante el uso de ODBC y los metodos de consulta e insercción de filas. Esta comentado al detalle creo y puede ser facilmente entendible. Continuemos.

2. Ahora que tenemos nuestra clase de conexion con acces, debemos implementarla, crea un nuevo archivo php, «index.php» y coloca el siguiente código:

<?php
 require 'msaccess.class.php';
 $db = new msaccess();

 $db->conectar();
 echo '<br/>'; 
 #Se realiza consulta
 $rs = $db->consulta( " SELECT * FROM tabla" );
 #Se imprimen los datos
 echo " Consulta: <br/>";
 while ( odbc_fetch_row($rs) ) 
      echo '- '.odbc_result($rs,"Nombre").' | ' .odbc_result($rs,"Correo").' |<br/>';
 #Se agrega un nuevo registro
 echo "Se agrega nuevo registro: <br/>";
 $db->insert("tabla" , " Nombre, Correo " , " 'Rasputia','rp_678tia@hotmail.com' " );
 #Se realiza consulta 
 $rs = $db->consulta( " SELECT * FROM tabla" );
 #Se imprimen los datos 
 while ( odbc_fetch_row($rs) ) 
      echo '- '.odbc_result($rs,"Nombre").' | ' .odbc_result($rs,"Correo").' |<br/>'; 
 $db->desconectar(); 
?>

Pues bien, ya está todo listo, ejecuta el archivo index desde el navagador y debes tener el siguiente resultado (+ o -):

Conexión a [demo.mdb ]: Establecida
Consulta:
- Juanita Ladel Trece | juni_123@hotmail.com |
- Paco Mermela | paco_m_32323o@gmail.com |
- Aquiles Brinco | aq_bo_99999@hotmail.com |
Se agrega nuevo registro:
- Juanita Ladel Trece | juni_123@hotmail.com |
- Paco Mermela | paco_m_32323o@gmail.com |
- Aquiles Brinco | aq_bo_99999@hotmail.com |
- Rasputia | rp_678tia@hotmail.com |
Conexion a [demo.mdb] : Terminado

Eso es todo 🙂 puedes bajarte los archivos del proyecto desde AQUI

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Formateo de registros en Excel con JExcel

Formateo de registros en Excel con JExcel

Tenia un problema, me pasaron unos archivos excel con unos cientos de registros (ver imagen más abajo) que exportaron de...

Multiplicación de matrices

Multiplicación de matrices

En matemática, la multiplicación o producto de matrices es la operación de composición efectuada entre dos matrices, o b...

Blog MVC – El theme y primer controlador [p3]

Blog MVC – El theme y primer controlador [p3]

Tercera parte del tutorial [Crea tu blog con el patrón MVC y php] En este post trabajaremos en el Theme del blog, agrega...

Crear XML desde una base de datos con jDom

Crear XML desde una base de datos con jDom

Un post cortito de fin de semana 🙂 , este trata de la forma de extraer la información de una base de datos formar una es...

Uso y creación de archivos 9-Patch

Uso y creación de archivos 9-Patch

Antes de la aparición de los celulares inteligentes y de las grandes mejoras tecnológicas que trajeron con ellas, las ap...

Extraer texto e imagen, exportar como PNG y encriptar un archivo PDF

Extraer texto e imagen, exportar como PNG y encriptar un archivo PDF

En este post hablaremos sobre la biblioteca de Apache PDFBox el cual es una herramienta para java de código abierto que...

Comparte lo que sabes

Categorias

Últimas entradas

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Google Bard la inteligencia artificial de Google se actualiza con una mejora que entra a competir con el resto de IAs y...

Herramientas

Generador de Enlaces a Whatsapp