Ver Mensaje Individual
  #7 (permalink)  
Antiguo 05/12/2013, 12:20
kasmo
 
Fecha de Ingreso: noviembre-2012
Mensajes: 65
Antigüedad: 14 años
Puntos: 2
Respuesta: consulta a bbdd no funciona en función

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Y qué es exactamente la variable $db para saber?

Digo, puedes ayudarnos a ayudarte si aprendes a depurar tu código, de otra forma es casi como ir adivinando.

Código PHP:
Ver original
  1. require_once "../bbdd/conecta.php";
  2. $db = conectaDb();
  3.  
  4. var_dump($db);

¿Eso qué arroja?
Eso me dvuelve null, el fichero para conectar a bbdd es este:

Código PHP:
<?php
// FUNCI�N DE CONEXI�N CON LA BASE DE DATOS MYSQL
/*function conectaDb()
{
    try {
        $db = new PDO("mysql:host=localhost", "root", "");
        $db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, TRUE);
        return($db);
    } catch (PDOException $e) {
        print "<h1>Error: No puede conectarse con la base de datos.</h1>\n";
        exit();
    }
}*/

// FUNCI�N DE CONEXI�N CON LA BASE DE DATOS MYSQL O CON SQLITE

define ("MYSQL",  "MySQL");
define ("SQLITE", "SQLite");
$dbMotor = MYSQL;                                // Base de datos empleada
if ($dbMotor == MYSQL) {


    
//Conexion para BBDD en servidor local
    
    
define("MYSQL_HOST", "mysql:host=localhost"); // Nombre de host MYSQL
    
define("MYSQL_USUARIO", "root");              // Nombre de usuario de MySQL 
    
define("MYSQL_PASSWORD", "xxxxxx");                 // Contrase�a de usuario de MySQL
    
$dbDb    = "nfc";                                     // Nombre de la base de datos
    
$dbTabla = $dbDb . ".usuarios";                  // Nombre de la tabla
    
} elseif ($dbMotor == SQLITE) {
    
$dbDb    = "/tmp/mclibre_baseDeDatos.sqlite"; // Nombre de la base de datos
    
$dbTabla = "tabla";                           // Nombre de la tabla
}

function 
conectaDb()
{
    global 
$dbMotor, $dbDb;
    
    try {
        if (
$dbMotor == MYSQL) {
            
$db = new PDO(MYSQL_HOST, MYSQL_USUARIO, MYSQL_PASSWORD);
            
$db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, TRUE);
        } elseif (
$dbMotor == SQLITE) {
            
$db = new PDO("sqlite:" . $dbDb);
        }
        return(
$db);
    } catch (
PDOException $e) {
        print 
"<p>Error: No puede conectarse con la base de datos.</p>\n";
    }
}
?>