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

Recortar imagen

Recortar imagen

En esta oportunidad dejo a considerancion un codigo realizado en Java/Netbeans para recortar una imagen visualmente Vide...

Conexion vb.net y access

Conexion vb.net y access

Para conectar Visual Basic .NET con una base de datos de MS Access se utiliza la libreria «System.Data.OleDb» en el sigu...

Bandera en Alto

Bandera en Alto

EL 6 de agosto de cada año se recuerda una de las fechas más importantes de la historia boliviana, porque el 6 de Agosto...

Escalar imagen en java

Escalar imagen en java

Esta aplicacion permite escalar una imagen desde java sin perder las proporciones de la misma, utiliza SCALE_AREA_AVERAG...

Colocar imagenes en un JComboBox

Colocar imagenes en un JComboBox

Para agregar imágenes a un JComboBox, partiremos de un proyecto Netbeans con la siguiente estructura: Tenemos dos clases...

Conectar C Sharp con MySQL

Conectar C Sharp con MySQL

Ya tengo varios post sobre conexión a base de datos en varios lenguajes y claro no podía faltar c#, el siguiente tutoria...

Comparte lo que sabes

Categorias

Últimas entradas

Melody.ml  es un aplicación online que usa la I.A (Inteligencia Artificial) para procesar archivos MP3 y separar en pist...

Small Basic es un lenguaje de programación propiedad de Microsoft creado especialmente para ayudar a los estudiantes a p...

Lorca Editor es una aplicación online creada por el desarrollador español Domingo Martin el cual tiene como objetivo el...

Eratóstenes era un matemático griego del siglo  III a.C. el cual ideó una manera rápida de obtener todos los números pri...

Herramientas

Generador de Enlaces a Whatsapp