Ver Mensaje Individual
  #6 (permalink)  
Antiguo 21/11/2011, 15:00
jossss
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 17 años, 11 meses
Puntos: 58
Respuesta: Misma función dentro de función

Para más datos, a esta función se le llama despues desde un bucle, ya que hay que comprobar los 5 minutos siguientes al comienzo de la hora..

Código PHP:
    <?php 
function buscaCoincidencias($fecha,$hora,$minutos){
$buscaHora=mysql_query("SELECT * FROM archivos WHERE fecha='$fecha' AND hora='$hora' AND minutos='$minutos'");
$bus=mysql_fetch_assoc($buscaHora);
    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;
    }
}

//llamar funcion    
    
$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 en esos 5 minutos no coincide ningún resultado,se muestran perfectamente. Si coincide, la función no devuelve nada.
He probado hacer un return justo antes de la función enbebida (marcado en el código) y si que se muestra la hora y minutos sumados correctamente, con lo cual lo que no funciona es la funcion embebida... supongo :(