Foros del Web » Programando para Internet » PHP » Configuración PHP »

PEAR DB Error: not found

Estas en el tema de PEAR DB Error: not found en el foro de Configuración PHP en Foros del Web. Hola a todos! Me pasa una cosa muy curiosa y por más vueltas que le doy no encuentro la solución. Utilizo Xampp + php + ...
  #1 (permalink)  
Antiguo 05/04/2010, 08:25
 
Fecha de Ingreso: abril-2010
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Información PEAR DB Error: not found

Hola a todos! Me pasa una cosa muy curiosa y por más vueltas que le doy no encuentro la solución.

Utilizo Xampp + php + PEAR.

Me he creado una libreria que se llama libreriaSQL.php que utiliza funciones PEAR para poder acceder a la BD. Un ejemplo de código de esta libreria es:

Código PHP:
require_once 'DB.php'
Function 
connectBD($sgbd='mysql'$user='root'$server='localhost'$database='prueba')
{
    
//CREO CADENA DE CONEXION
    
$dsn = array(
        
'phptype'  => $sgbd,
        
'username' => $user,
        
'hostspec' => $server,
        
'database' => $database,
    );

    
//ME CONECTO
    
$dbh DB::connect($dsn);
ECHO 
$dbh;

    
//COMPRUEBO SI HA HABIDO UN ERROR DE CONEXION
    
if (PEAR::isError($dbh)) 
        die(
$db->getMessage());

    return 
$dbh;

Y luego tengo un archivo que utiliza esa libreria "prueba.php"

Código PHP:
include("libreriaSQL.php");
$db=connectBD('mysql','root''localhost''NombredemiBd'); 
Si tengo esa libreria (libreriaSQL.php)y ese archivo ("prueba.php")en : "Xampp\htdocs\" funciona perfectamente.

En el momento que traslado esos dos archivos a una subcarpeta, por ejemplo.

El archivo prueba.php lo tengo en: Xampp\htdocs\miWeb\prueba.php con el siguiente codigo.

Código PHP:
include("librerias/sql/libreriaSQL.php");
$db=connectBD('mysql','root''localhost''NombredemiBd'); 
Y la libreria la tengo en: Xampp\htdocs\miWeb\librerias\sql\libreriaSQL.php

Al ejecutar la web me sale el siguiente error:
DB Error: not found
Fatal error: Call to a member function getMessage() on a non-objec
.

He pensado que podria ser problema de la configuración del php, asi que me he ido a php.ini y he cambiado esta linea.

include_path = ".;F:\xampp\php\PEAR"

por esta

include_path = ".;F:\xampp\htdocs\miWeb\librerias\sql\PEAR"

Pero sigue saliendo el mismo error, el código de los dos archivos es el mismo, lo único que cambia son las rutas.

Alguna idea?
Gracias de antemano!
  #2 (permalink)  
Antiguo 06/04/2010, 07:41
 
Fecha de Ingreso: abril-2010
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
De acuerdo Respuesta: PEAR DB Error: not found

Bueno ya lo tengo solucionado!

El error Fatal error: Call to a member function getMessage() on a non-objec. era porque en este if ponia $db en vez de $dbh.

if (PEAR::isError($dbh))
die($dbh->getMessage());

El DB Error: not found es porque no podia acceder bien a las librerias, era un problema de rutas.

Saludos!.

Etiquetas: pear, php-mysql
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




La zona horaria es GMT -6. Ahora son las 12:06.