Foros del Web » Programando para Internet » PHP »

Diseñar clases para conectar a la base de datos

Estas en el tema de Diseñar clases para conectar a la base de datos en el foro de PHP en Foros del Web. Hola a todos. He realizado conexiones desde PHP hacia informix utilizando odbc_connect y todo me ha funcionado bien. Quiero ahora, hacer la conexion y toda ...
  #1 (permalink)  
Antiguo 07/07/2005, 17:26
 
Fecha de Ingreso: enero-2005
Mensajes: 53
Antigüedad: 14 años, 11 meses
Puntos: 0
Diseñar clases para conectar a la base de datos

Hola a todos.

He realizado conexiones desde PHP hacia informix utilizando odbc_connect y todo me ha funcionado bien. Quiero ahora, hacer la conexion y toda la manipulacion de datos utilizando clases en PHP. Los ejemplos que he bajado de internet y los ejemplos de libros ninguno de ellos me ha funcionado. Alguien ha realizado alguna aplicacion utilizando Clases en PHP para conectarse a la base de datos...??? Me pueden enviar un ejemplo..?? no importa la B.D.

Gracias, puedes escribirme a : [email protected]
  #2 (permalink)  
Antiguo 07/07/2005, 22:55
Avatar de JALF  
Fecha de Ingreso: septiembre-2004
Ubicación: Cali - Colombia
Mensajes: 634
Antigüedad: 15 años, 3 meses
Puntos: 2
Hola mira yo utilizo esto en mis aplicaciones mira a ver si te sirve!!!!

fichero class.mysqli.php

Código PHP:
<?php

class DB{
    
    private 
$config;
    public 
$conex;
    
    public function 
DB(){
        
$this->config = new CONFIG();
    }
    
    public function 
CONECTAR(){
        
$this->conex mysqli_connect($this->config->host$this->config->usuario$this->config->password$this->config->nombre_db);
    }
    
    public function 
CONSULTAR($SQL){
        
$respuesta mysqli_query($this->conex,$SQL);
        return 
$respuesta;
    }
    
    public function 
RESPUESTA($respuesta){
        
$linea mysqli_fetch_row($respuesta);
        return 
$linea;
    }
    
    public function 
LIBERAR($resultado){
        
mysqli_free_result($resultado);
    }
    
    public function 
NUMERO_REGISTROS(){
        
$num mysqli_affected_rows($this->conex);
        return 
$num;
    }
    
    public function 
DESCONECTAR(){
        
mysqli_close($this->conex);
    }
    
}

?>
fichero: class.config.php

Código PHP:
<?php
include_once("msn.historial.php");

class 
CONFIG{
    
    public 
$host "localhost";
    public 
$usuario "root";
    public 
$password "sqlx32";
    public 
$nombre_db "zeus3";
}

?>
Espero que te sirva!!!
__________________
Ubuntu User # 15554
http://dubaiphp.wordpress.com/ -Mi vida de desarrollo, juegos y algo más en un Blog-
  #3 (permalink)  
Antiguo 17/02/2008, 11:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 394
Antigüedad: 12 años, 1 mes
Puntos: 2
Re: Diseñar clases para conectar a la base de datos

mmm... Perdona mi ignorancia pero no entiendo muy bien con que fin te has crado una clase propia que hace todas esas cosas. Porque por ejemplo en vez de llamar a


public function RESPUESTA($respuesta){
$linea = mysqli_fetch_row($respuesta);
return $linea;
}


puedes hacer respuesta->mysqli_fetch_row

ya que mysqli permite su uso mediante orientacion a objetos .......

nose....si lo usas por algo en concreto.....explicamelo porfa...que puede que me sirva

Un saludo,
  #4 (permalink)  
Antiguo 17/02/2008, 12:47
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 14 años, 10 meses
Puntos: 20
Re: Diseñar clases para conectar a la base de datos

Lo habrá hecho tan solo para renombrar la función, para que tenga un nombre parecido a las otras y fácil de recordar.
  #5 (permalink)  
Antiguo 17/02/2008, 16:54
 
Fecha de Ingreso: junio-2007
Ubicación: por ahi
Mensajes: 262
Antigüedad: 12 años, 5 meses
Puntos: 4
Re: Diseñar clases para conectar a la base de datos

Yo creo que esa abstraccion de la BD en la clase de JALF esta muy bien como ejemplo. Pero algo que yo miraria si quisiera realmente hacer una superclasse o classe para conectarme a la BD seria la portabilidad. Busca pear:DB o MDB2 , asi obtendras la portabilidad ideal.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 10:39.