Foros del Web » Programando para Internet » PHP »

saber el error de mysql

Estas en el tema de saber el error de mysql en el foro de PHP en Foros del Web. hola maestro cuando hago un script que hace por ejemplo un insert como puedo saber si sucede algun tipo de error , ya sea de ...
  #1 (permalink)  
Antiguo 18/10/2006, 14:45
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 3 meses
Puntos: 2
saber el error de mysql

hola maestro cuando hago un script que hace por ejemplo un insert como puedo saber si sucede algun tipo de error , ya sea de sintaxis o falla en el servidor.


un saludo.
__________________
"Cuando se adelanta un oponente, enfréntalo y salúdalo; si intenta retroceder, déjalo seguir su camino"
  #2 (permalink)  
Antiguo 18/10/2006, 14:59
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
De acuerdo

Pues lo que puede hacer agregar lo siguiente en tu sentencia


$select = mysql_query("Select * from foro")or die(mysql_error());


Con la función die() lo que sucede es que si ocurre algun error, el script ya no se "ejecutara" mas y ademas con mysql_error() obtienes el "error" que ocurrio.

Saludillos.
  #3 (permalink)  
Antiguo 18/10/2006, 15:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En general en las funciones Mysql tienes las funciones "mysql_error()" por ejemplo para darte un mensaje de error concreto del problema.

Aprovechandote de que las funciones en general (de conexión y demás a BBDD entre otras) al producirse un error, devuelven un "false" .. puedes usarlo como habrás visto mucho por ahí:

Código PHP:
mysql_connect(....) or die ("Hay un error en la conexión. Mysql dice: ".mysql_error()) 
ó

Código PHP:
if (@!$resultado=mysql_query($sql)){
echo 
"Hay un error en la consulta SQL. Mysql dice: ".mysql_error();
} else {
   
// sigues el proceso con tu $resultado.

En este último caso usé la "@" delante de la función para "silenciar" a PHP con su error característico y así tratarlo como corresponde dando el error de Mysql que es el que más se aproxima al problema real (en ese caso).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 18/10/2006, 16:55
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 3 meses
Puntos: 2
muchas gracias.
__________________
"Cuando se adelanta un oponente, enfréntalo y salúdalo; si intenta retroceder, déjalo seguir su camino"
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 14:23.