Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/03/2011, 02:24
SeaPirates
 
Fecha de Ingreso: enero-2009
Ubicación: España
Mensajes: 786
Antigüedad: 15 años, 3 meses
Puntos: 9
Realizar un random hasta que exista la id en la db

Hola miren, primero lo que hago es calcular cual es la máxima ID:

Cita:
$lastidroomq = mysql_query("SELECT id FROM rooms ORDER BY id desc LIMIT 1");
$lastidroom = mysql_fetch_array($lastidroomq);
$roommaxid = $lastidroom['id'];
Y luego hago un random

Cita:
$rand_room = rand(1,$roommaxid);
El problema esque las id de algunas salas no existen porque pueden ser borradas, como puedo hacer para que si la id no existe en la db vuelva a hacer de nuevo el random?

Intenté crear una función

Cita:
function random(){
$rand_room = rand(1,$roommaxid);
}
random();
//el sql para saber si existe esa id en la db con mysql_num_rows
if($exist == "0"){
random();
}
Pero al hacer eso me tarda mucho en cargar la página y da error de que tardó mas de 60 segundos en ejecutarse

Como lo puedo hacer?