Nueva pregunta

Pregunta:

Fecha: 25-12-2018 20:17:41 (En Español)

Ayuda con consulta sql a base de datos en php 5[Resuelta]

Hola, estoy realizando un sistema para un hotel de manera que el administrador pueda gestionar las reservas.

Me he encontrado con una duda a la hora de hacer una consulta.


Como ven en la imagen tengo una tabla donde me debe marcar con rojo las habitaciones ocupadas, pero no hay caso! no se me ocurre como realizar la consulta >.<

La idea es que con la fecha actual consulte por numero de habitación si esta ocupada o no. Los campos en la base de datos son "checkin y checkout".

El formato de fecha por ejemplo para checkin es 2018-12-20 19:00 y para check out 2018-12-22 15:00.

se les ocurre algo? gracias!
Etiquetas: Base de Datos - MySQL - MySQL Desarrollo - PHP - SQL Votos: 0 - Respuestas: 6 - Vistas: 9 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 26-12-2018 02:18:18 Hola se me ocurre trabajar con estados para poder diferenciar entre ocupados y desocupados
    donde 1 va a ser Ocupado y 0 va ser Desocupado
    por ejemplo crea una columna en la tabla de las habitaciones que contega un valor numerico y dependiendo del de ese valor te dira si esta ocupada o desocupada voy crear un codigo y te lo paso al tiro pero esto es solo para lo que es diferenciar entre ocupado y desocupados y el Color rojo lo de los horarios hay que pensar un poco mas
      Votos: 1 - Link respuesta
     
  • Fecha: 26-12-2018 03:32:00 Coincido con Yerlin, puedes crear un campo booleano en tu tabla de habitaciones donde indiques si dicha habitación esta ocupada o reservada de esa manera solo validas dicha tabla, por otro lado, puedes crearte una tabla adicional donde registres la fecha de entrada y salida de dichas habitaciones de esa manera funcionaría como historial.   Votos: 0 - Link respuesta
     
  • Fecha: 26-12-2018 07:08:00 Hola, tenia justamente un campo estado ya creado, necesitaba la posibilidad de realizar la consulta sólo con las fechas.   Votos: 0 - Link respuesta
     
  • Fecha: 26-12-2018 22:12:48 Coincido con los dos en que debes tener un campo estado asi es mas facil luego hacer lo que necesitas. Con las fechas simplemente es complicarte mas la vida porque ademas los hoteles funcionan con horas de salida con lo cual tendrias que trabajar con horas tambien. Eso supone el siguiente escenario : un usuario debe salir de su habitacion a las 12 y sale a las 11:59 , perfecto el sistema automaticamente marco el abandono. Pero en cambio otro usuario salio a las 12:10 y desde 12 ya marco la habitacion como libre y ahi es un problema porque durante 10 minutos ha marcado como libre una que estaba ocupada.

    Lo mejor de todo es hacerlo con estados y tambien anotar que al sistema deben poder acceder los camareros y reportar las habitaciones listas para entrar que es como normalmente se hace.
      Votos: 0 - Link respuesta
     
  • Fecha: 27-12-2018 16:13:00 Gracias por su ayuda <3   Votos: 0 - Link respuesta
     
  • Fecha: 28-12-2018 10:07:58 Hola lo Prometido es deuda aqui esta el Codigo espero complemente algo y te ayude

    <!DOCTYPE html>
    <html lang="es">
    <head>
    	<meta charset="utf-8">
    	<title>Check</title>
    </head>
    <body>
    <center>
    <div style="float: left;">
    	<h1 style="font-size: 16px;">Piso 1</h1>
           
             <?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='01'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    <?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='02'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='03'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='04'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    </div>
    <div style="float: left;">
    	<h1 style="font-size: 16px;">Piso 2</h1>
    
       <?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='05'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='06'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='07'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='08'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    
    </div>
    
    <div style="float: left;">
    	<h1 style="font-size: 16px;">Piso 3</h1>
    
        <?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='09'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='10'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='11'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    
    
    	?>
    	<?php
    		include("conexion.php");
    		$sql="SELECT * FROM thabitaciones where numero='12'";
    		$resul=mysqli_query($conexion, $sql);
    		$resultado=mysqli_fetch_array($resul);
    		if ($resultado['estado']=='1') {
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background: red;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    			
    		}
    		else{
    
    			printf("<table><td style='padding:10px; border: 1px solid; font-size:16px; background:;'><img src='img/cama.png' style='width:60px; height:30px; padding-top: 20px 20px; '><b> Habitacion <b>".$resultado['numero'].'</td></table>');
    		}
    	?>
    
    </div>
    	
    </center>
    </body>
    </html>	
    


    La Tabla es la siguiete

    nombre: thabitaciones

    campos: id(int,auto-increment),numero(int),estado(int)

    id/numero/estado/
    1/ 01 / 1 /
    2/ 02 / 0 /
    3/ 03 / 0 /
    4/ 04 / 1 /
    5/ 05 / 0 /
    6/ 06 / 1 /
    7/ 07 / 1 /
    8/ 08 / 0 /
    9/ 09 / 1 /
    10/ 10 / 0 /
    11/ 11 / 0 /
    12/ 12 / 1 /


    Donde 0 es Desocupado y 1 es Ocupada

    esto es solo la consulta ahora si quieres cambiarla de estado te recomiendo que las habitaciones las encierres en un <a href ""><a/> y la re direcciones a otro archivo donde le cambies el estado a ocupado ò desocupado, o alli mis creas un boton, como tu quieras hay un mundo posibilidades en la programacion espero te sirva en tu proyecto
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com