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

Crea tu blog con el patrón MVC y php

Crea tu blog con el patrón MVC y php

En post anteriores se vio algunos conceptos y ejemplos de lo que es el patrón MVC,  dando un paso más adelante ahora con...

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...

Crea un TextBox estilo Metro para java

Crea un TextBox estilo Metro para java

En este tutorial personalizaremos un JTextField java para darle la apariencia de un TextBox de Windows Metro. El TextBox...

Generador de Texto ASCII .:. Solo Código

Generador de Texto ASCII .:. Solo Código

ASCII acrónimo inglés de American Standard Code for Information Interchange (Código Estándar Estadounidense para el Inte...

Client REST usando GSON y Volley

Client REST usando GSON y Volley

En este post crearemos un cliente android para consumir un recurso de un REST API utilizando las librerías GSON y Volley...

Convierte tus dibujos web en Código HTML

Convierte tus dibujos web en Código HTML

Sketch2Code es un proyecto de Microsoft el cual usa IA (Inteligencia Artificial) para transformar el diseño de una inter...

Comparte lo que sabes

Categorias

Últimas entradas

WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es...

Muchas de las innovaciones computacionales de la NASA se desarrollaron para ayudar a explorar el espacio, pero ahora la...

TikTok es una plataforma de microvideos muy popular entre los jóvenes el cual cuenta ya con millones de videos cortps de...

Una clase JTree permite mostrar datos de una forma jerárquica y en realidad este objeto no contiene sus datos; es decir,...

Herramientas

Generador de Enlaces a Whatsapp