PHP - PDOStatement::errorInfo

 
Vista:

PDOStatement::errorInfo

Publicado por Carlos (1 intervención) el 28/05/2015 21:26:14
Hola, estoy tratando de usar la instrucción PDOStatement::errorInfo en un select y estoy forzando a que salga un error para que muestre la información con respecto al error seleccionado una tabla que no existe.

<?php
/* Provocar un error -- la tabla BONES no existe */
$gsent = $gbd->prepare('SELECT skull FROM bones');
$gsent->execute();

echo "\nPDOStatement::errorInfo():\n";
$arr = $gsent->errorInfo();
print_r($arr);
?>

Pero al momento de ejecutar me muestra lo siguiente:

PDOStatement::errorInfo(): Array ( [0] => 00000 [1] => [2] => )

Cuando debería mostrar el siguiente error:

ERROR 1146 (42S02)

Dentro del array.

No se si me falte declarar algo en el código, o esa algo del archivo de configuración del php.ini para que muestre el error.

De antemano gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

PDOStatement::errorInfo

Publicado por xve (6935 intervenciones) el 29/05/2015 08:14:54
Hola Carlos, creo que te sobra la instrucción execute(), ya que el errorInfo() te lo da de esa instrucción, no del prepare...
Tambien, para obtener el errorInfo(), se obtiene del conector a la base de datos, no del resultado de la consulta...

prueba así:
1
2
3
4
5
$gsent = $gbd->prepare('SELECT skull FROM bones');
if (!$gsent) {
    echo "\nPDO::errorInfo():\n";
    print_r($conectorBaseDatos->errorInfo());
}

P.D. Recuerda modificar el conector a la base de datos

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar