Foros del Web » Programando para Internet » PHP »

PDO No muestra la consulta

Estas en el tema de PDO No muestra la consulta en el foro de PHP en Foros del Web. Hola a todos, siguiendo las recomendaciones he empezado a tratar PDO para las conexiones con la DB. He revisado el manual y he visto varios ...
  #1 (permalink)  
Antiguo 23/05/2011, 09:38
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años, 6 meses
Puntos: 261
PDO No muestra la consulta

Hola a todos, siguiendo las recomendaciones he empezado a tratar PDO para las conexiones con la DB. He revisado el manual y he visto varios ejemplos. Pero...

Intentando comprender su funcionamiento para implementarlo en el proyecto he querido hacer una consulta básica que muestre el id y el nombre de un usuario.

Me sale las impresiones, conectado y desconectado pero no muestra la consulta. Llevo toda la mañana probando cosas pero no, no lo consigo.

Este el el code:
Código PHP:
<?php
/****** Error Report *********/
error_reporting(E_ALL);
ini_set("display_errors"1);
/*****************************/

$strDSN "mysql:dbname = basededatos; host = localhost; user = root; password = root";
try {
    
$objPDO = new PDO($strDSN);
    print 
"Conexión realizada ....<br />\n";
    
// La conexión
    
$i 0;
    
$strQuery "SELECT iduser, usuario FROM usuarios WHERE iduser = 2";
    
$objStatement $objPDO-> prepare($strQuery);
    
$objStatement-> execute();
    while (
$arRow $objStatement-> fetch(PDO::FETCH_ASSOC)) {
            print 
'Row ' $i '<br />' "\n";
            
            foreach (
$arRow as $key => $value) {
                    print 
'Columna ' $key ', Valor ' $value '<br />' "\n";
            };
            
$i++;
    };
  
} catch (
PDOException $e) {
    echo 
'Hay errores: ' $e-> getMessage() . "\n";
    exit(
0);
}

// Desonectar
$objPDO NULL;
print 
"Desconexión realizada.\n";
?>
Saludos y gracias de antemano,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #2 (permalink)  
Antiguo 23/05/2011, 09:58
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: PDO No muestra la consulta

Haz un var_dump a la variable $arRow a ver si te trae algo
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 23/05/2011, 10:39
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años, 6 meses
Puntos: 261
Respuesta: PDO No muestra la consulta

Cita:
Iniciado por abimaelrc Ver Mensaje
Haz un var_dump a la variable $arRow a ver si te trae algo
Hola abimaelrc, esto es lo que sale.

bool(false)

Gracias,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #4 (permalink)  
Antiguo 23/05/2011, 10:47
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: PDO No muestra la consulta

Por defecto PDO no lanza las excepciones debes configurarlo y ademas tienes mal el dsn, debería ser algo así:

Código PHP:
Ver original
  1. $dsn = "mysql:dbname=basededatos;host=localhost;";
  2. try {
  3.     $pdo = new PDO($dsn, 'user', 'password', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
  4.     ...
  5. } catch (PDOException $e) {
  6.     ...
  7. }

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 23/05/2011, 11:01
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años, 6 meses
Puntos: 261
Respuesta: PDO No muestra la consulta

Cita:
Iniciado por masterpuppet Ver Mensaje
Por defecto PDO no lanza las excepciones debes configurarlo y ademas tienes mal el dsn, debería ser algo así:
[...]
Saludos.
Ahí estaba el error!!

No se si tendrá algo que ver, los ejemplos en los que me basaba estaban configurados para PostgreSQL.

En fin, poco a poco.

Muchas gracias a los dos,

Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight

Etiquetas: muestra, pdo
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:10.