Foros del Web » Programando para Internet » PHP »

Funcion recursiva

Estas en el tema de Funcion recursiva en el foro de PHP en Foros del Web. Hola, llevo más de un día dándole vueltas a esta función y no encuentro el error. Código PHP:   <?php  function  buscaCoincidencias ( $fecha , ...
  #1 (permalink)  
Antiguo 22/11/2011, 06:37
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 17 años, 11 meses
Puntos: 58
Funcion recursiva

Hola, llevo más de un día dándole vueltas a esta función y no encuentro el error.
Código PHP:
 <?php 
function buscaCoincidencias($fecha,$hora,$minutos){
$buscaHora=mysql_query("SELECT * FROM archivos WHERE fecha='$fecha' AND hora='$hora' AND minutos='$minutos'");
   if(
mysql_num_rows($buscaHora)>0){/
      
$minutos++;
      if(
$minutos>59){//si pasa de 59 empieza de 0 
      
$minutos=$minutos-60;
      
$hora++;
      }
      if(
$hora>23){//si pasa de 23 horas empieza de 0
      
$hora=$hora-24;
      }
//return $hora.":".$minutos;// se muestra correctamente si lo descomento
      
buscaCoincidencias($fecha,$hora,$minutos);//se vuelve a ejecutar la función
   
}else{
   return 
$hora."/".$minutos;
   }
}


   
$contador=0;
   for(
$i=0;$i<5;$i++){//siguientes 5 minutos
   
$tiempo=buscaCoincidencias($row['fecha'],$row['hora'],($row['minutos']+$contador));
echo 
$tiempo."</br>";
   
$contador++;
   
?>
Si hay alguna coincidencia en la base de datos no se muestra nada de nada , si no hay coincidencia se muestra la hora perfectamente.
Alguna ayuda?
  #2 (permalink)  
Antiguo 22/11/2011, 06:39
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Funcion recursiva

¿Q se supone q tiene q hacer? :)
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 22/11/2011, 06:41
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 17 años, 11 meses
Puntos: 58
Respuesta: Funcion recursiva

En la funcion se meten una fecha, una hora y un minuto.
Se comprueba si existe en la base de datos una coincidencia.
Si hay coincidencia se suma 1 minutos y se vuelve a ejecutar la funcion hasta que no haya coincidencia.
  #4 (permalink)  
Antiguo 22/11/2011, 06:48
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Funcion recursiva

Prueba a poner esto: (es el q está en la función, antes del else!)

Código PHP:
return buscaCoincidencias($fecha,$hora,$minutos); 
__________________
>> Eleazan's Source
>> @Eleazan
  #5 (permalink)  
Antiguo 22/11/2011, 06:55
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 17 años, 11 meses
Puntos: 58
Respuesta: Funcion recursiva

Me has dado la vida Eleazan, funciona correctamente. Muchísimas graciassss!
  #6 (permalink)  
Antiguo 22/11/2011, 06:56
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Funcion recursiva

Fallos "tontos" así tenemos todos xD

Muchas veces es dificil verlos desde dentro... :)
__________________
>> Eleazan's Source
>> @Eleazan

Etiquetas: error....., funciones, recursivas
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 22:33.