Foros del Web » Programando para Internet » PHP »

como pregunto por un error en una consulta

Estas en el tema de como pregunto por un error en una consulta en el foro de PHP en Foros del Web. siguiendo esta estructura: $resultado=consulta mysql if (no hay error) hacer 1; else intentarlo de nuevo; 1. como seria el if? 2. existe recursividad como en ...
  #1 (permalink)  
Antiguo 28/07/2002, 17:01
 
Fecha de Ingreso: junio-2002
Ubicación: España
Mensajes: 348
Antigüedad: 22 años, 5 meses
Puntos: 8
como pregunto por un error en una consulta

siguiendo esta estructura:

$resultado=consulta mysql
if (no hay error)
hacer 1;
else
intentarlo de nuevo;

1. como seria el if?
2. existe recursividad como en C. Si es así como sería. (es recomendable la recursividad en webs?)

Saludos
  #2 (permalink)  
Antiguo 28/07/2002, 17:36
Avatar de gomo  
Fecha de Ingreso: mayo-2002
Ubicación: [email protected]
Mensajes: 906
Antigüedad: 22 años, 6 meses
Puntos: 0
Re: como pregunto por un error en una consulta

mysql_query() devuelve false si la consulta da error. En cambio devuelve true si se consigue efectuarla sin problemas, aun si no tiene ningun resultado.
Entonces seria
$a = mysql_query("SELECT * FROM tabla");
if(!$a){
//hacer lo que quieras
}
pero por mi parte te recomiendo que no trates de hacerlo indefinidamente, ya que por lo general cuando una consulta no va es por un error dado, no suele pasar que haya errores ocasionales espontaneos.
de ultima ultima si crees que tu servidor es suscetible de fallar asi, podes hacer
for($i=1,$i<=10,$i++){
$query = @mysql_query("SELECT * FROM tabla");
if($query){
break;
}
}
if(!$query){
echo "Sorry viejo trate como 10 veces pero no pude...";
}
(el signo @ hace que no se muestren los mensajes de error)
Entonces el loop se repite hasta 10 veces, a menos que consiga hacer el query... en ese caso sale del loop y tod va bien.
En cambio si pasan las 10 veces y aun asi no lo consigue te dice que no se pudo...
Igualmente no te recomiendo que hagas esto, los errores en las consultas suelen ser precisos...

Saludos ;)


<div align="center"><img src="http://cablemodem.fibertel.com.ar/sainztrapaga/images/firma.jpg" width="435" height="70" border="0">
</div>
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:12.