Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/03/2008, 15:16
betorov
 
Fecha de Ingreso: marzo-2008
Mensajes: 1
Antigüedad: 16 años
Puntos: 0
Problema Registrar horas por salon php+mysql+flash

El problema es el siguiente

Un usuario puede crear distintas bloques horarios para ser ocupados en un salon es decir..

un usuario puede registrar como Hora_inicio 10:00 Hora_fin 12:00

despues podria registrar hora_inicio 13:00 hora_fin 15:00 ..
Esto lo hace correctamente

el problema se produce cuando el usuario quiera registrar horas dentro de los rangos ocupados es decir hora_inicio 11:00 hora_fin 16:00 o cualquiera..

la idea principal es que no se solapen o se superpongan los horas que vaya registrando un usario.. me ha complicado mucho el tema no puedo salir del asunto.

EL sistema trabaja de la siguiente manera...
desde un SWF le mando los valores de hora_inicio, hora_fin los recibo en PHP
de la siguiente manera

Código PHP:
if(isset($_POST['horainicio']))
    
$horainicio=$_POST['horainicio'];
else
    
$horainicio="";

if(isset(
$_POST['horatermino']))
    
$horatermino=$_POST['horatermino'];
else
    
$horatermino=""
Ahora bien.. el codigo que he estado manejando es el siguiente

Código PHP:
$sql "SELECT id, hora_inicio, hora_fin  FROM reserva_salon";
$resultado mysql_query($sql,$conexion) or die (mysql_error());
while(
$lee mysql_fetch_assoc($resultado)){


if( 
$horainicio $lee['hora_inicio']){
        if(
$horatermino <$lee['hora_inicio'] ){
                                            
$sepuede 0;
                                                                            }
                                    else{
                                            
$sepuede 1;
                                                    }
                                                    }
                                    if(
$horainicio $lee['hora_inicio']){
                            
                                    if(
$horainicio $lee['hora_fin']){
                                    
$sepuede 0;
                                                                    }
                                    else{
                                            
$sepuede 1;
                                                }
                                            }
                            
    if(
$sepuede != 0){
                                    
//detener ejecucion y decir que no se puede ingresar
                                        
$respuesta="no";
                                        print 
"&respuesta=".$respuesta;
                                    
                                                    } else {
$query="insert into reserva_salon (id_salon,valor_reserva_salon, fecha_hora_reserva, fecha_reservada, hora_inicio, hora_fin,estado) values ('$textsalon','$textvalor','','$textfec','$horainicio','$horatermino', 'D')";
    
mysql_query($query,$conexion) or die (mysql_error());
    if(
$tipo=="html")
        
header("Location: reserva_salon.php");
    else
    {
        
//y mandamos un si, indicando que too quedò grabado correctamente
        
$respuesta="si";
        print 
"&respuesta=".$respuesta;
        exit();
        
                         }
        }

Porfavor necesito de su ayuda .. .tengo q validar todos los casos

para que no se solapen las horas...

Como si fuera un Salon de clases.. tienen k registrarse horas de inicio y final..
pero tambien se podrian registrar bloques en aquellos huecos en el dia..

de antemano gracias !!!!