Foros del Web » Programando para Internet » PHP »

errores de Pgsql no muestran nada

Estas en el tema de errores de Pgsql no muestran nada en el foro de PHP en Foros del Web. Buenas a [email protected], Estoy tratando de utilizar las funciones de PostgreSql para el manejo de errores. Funciones tales como pg_last_error(), pg_result_error() , etc. con el ...
  #1 (permalink)  
Antiguo 12/07/2019, 16:54
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 536
Antigüedad: 15 años, 2 meses
Puntos: 7
Pregunta errores de Pgsql no muestran nada

Buenas a [email protected],

Estoy tratando de utilizar las funciones de PostgreSql para el manejo de errores. Funciones tales como pg_last_error(), pg_result_error(), etc. con el proposito de visualizarlas en la ejecucion de mis scripts.

El lio es que al querer hacerles un echo no muestra el mensaje.

El codigo con el que estoy probando es el siguiente:

Código PHP:
$url "host=$servidor port=5432 dbname=$bd user=$usuario password=$contrasenia";

$con pg_connect($url);
echo 
pg_last_error($con); die; 
Para tal efecto, en el string de coneccion ($url) $dbname la asigno vacia para que ocurra error, Efectivamente ocurre error, pero el echo no muestra nada.

Como se maneja entonces este tema?

Agradezco de antemano su valiosa ayuda
__________________
El que no sabe y sabe que no sabe, es un ignorante...enseñémosle!. El que no sabe y se cree que sabe, es un necio... ¡ignorémosle!.
El que sabe y sabe que sabe, es un sabio... ¡sigámosle!.
  #2 (permalink)  
Antiguo 12/07/2019, 22:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 9.946
Antigüedad: 11 años, 1 mes
Puntos: 2183
Respuesta: errores de Pgsql no muestran nada

Probablemente el servidor está configurado para no mostrar errores en pantalla, sino guardarlos en un registro de error.

Si puedes modificar php.ini:
Código:
display_errors = on
error_reporting = E_ALL
O puedes agregar a tus scripts la siguiente línea:
Código PHP:
Ver original
  1. ini_set('display_errors', 'on');

Si estás trabajando en localhost no tendrás mayor problema, pero, por lo general, en servidores compartidos no podrás activar esta opción y deberás buscar el mensaje en el archivo error_log

Otra alternativa puede ser el uso de try - catch.
Código PHP:
Ver original
  1. try {
  2.     // código a ejecutar
  3. } catch (Exception $e) {
  4.     // Mostrar mensaje de error y finalizar
  5. }
__________________
- León, Guanajuato
- GV-Foto



La zona horaria es GMT -6. Ahora son las 11:54.