Foros del Web » Programando para Internet » PHP »

Reserva

Estas en el tema de Reserva en el foro de PHP en Foros del Web. Buenos dias para todos de antemano les doy gracias por el aporte que me puedan brindar. Mi duda es que estoy haciendo una aplicacion de ...
  #1 (permalink)  
Antiguo 29/10/2010, 10:10
 
Fecha de Ingreso: marzo-2010
Ubicación: medellin
Mensajes: 15
Antigüedad: 14 años
Puntos: 0
Reserva

Buenos dias para todos de antemano les doy gracias por el aporte que me puedan brindar.
Mi duda es que estoy haciendo una aplicacion de reservas de espacios fisicos, ya me agrega la reserva pero no se como consultarla por dia de inicio de la reserva y fecha final de la misma, estoy utilizando paginacion con ajax por si hay muchas reservas sea mas facil verlas:

formulario uno:
<?php include('session.php');
include("menu_reserva.php");
include("config.php");
?>
<html>
<head>
<title>CONSULTAR RESERVA</title>
<link rel="stylesheet" type="text/css" href="estilos.css">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<script language="javascript" src="validaciones.js"></script>
<link href="css/calendario.css" type="text/css" rel="stylesheet">
<script src="js/calendar.js" type="text/javascript"></script>
<script src="js/calendar-es.js" type="text/javascript"></script>
<script src="js/calendar-setup.js" type="text/javascript"></script>
<script type="text/javascript" src="ajax.js"></script>
</head>
<body onLoad="muestraReloj()" onkeydown="return false">
<br>
<br>
<div align="right" Style="background-color:#81BEF7;"><font color="#0067CE"><b> Administrador:</b></font>&nbsp;<?php echo $_SESSION["nombre_logueo"];echo'<br><font color="#0067CE" ><b>Fecha:&nbsp;</b></font>'; include("fecha.php"); ?></div>
<div align="right" Style="background-color:#81BEF7;" id="spanreloj"></div>
<form action="" method="get" name="consultar_reserva">

<center><b><h1><font color="#0067CE">Consultar Reserva</font></h1></b></center>
<br>
<table class="agregar_administrador" align="center">
<tr>
<td><b>Fecha inicio&nbsp;*</b></td>
<td><input type="text" name="fechainicio" id="ingreso" /> <!--value="dd-mm-yyyy" -->
<img src="ima/calendario.png" width="16" height="16" border="0" title="Fecha inicial de la reserva" id="lanzador">
<!-- script que define y configura el calendario-->
<script type="text/javascript">
Calendar.setup({
inputField : "ingreso", // id del campo de texto
ifFormat : "%Y-%m-%d", // formato de la fecha que se escriba en el campo de texto
button : "lanzador" // el id del botón que lanzará el calendario
});
</script></td>
<td><b>Fecha final&nbsp;*</b></td>
<td><input type="text" name="fechafinal" id="fin"/> <!--value="dd-mm-yyyy" -->
<img src="ima/calendario.png" width="16" height="16" border="0" title="Fecha final de la reserva" id="lanzador1">
<!-- script que define y configura el calendario-->
<script type="text/javascript">
Calendar.setup({
inputField : "fin", // id del campo de texto
ifFormat : "%Y-%m-%d", // formato de la fecha que se escriba en el campo de texto
button : "lanzador1" // el id del botón que lanzará el calendario
});
</script></td>
</tr>
<tr>
<td colspan="4"><center><input name="mostrar" type="submit" value="Consultar" onClick="reservas();"/><input type="reset" value="Limpiar"></center></td>
</tr>
</table>
</form>
<div id="contenido">
<?php
if (isset($_GET['fechafinal']))
{

include('paginador.php');

}
?>
</div>
</body>
</html>

El accion:


<?php
require('conexion.php');
$RegistrosAMostrar=5;
$fechafinal=$_GET['fechafinal'];
$fechafinal=$_GET['fechainicio'];
//estos valores los recibo por GET
if(isset($_GET['pag']))
{
$RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar;
$PagAct=$_GET['pag'];
//caso contrario los iniciamos
}
else
{
$RegistrosAEmpezar=0;
$PagAct=1;
}
$Resultado=mysql_query("SELECT reserva.fecha_inicio,
reserva.fecha_final,
reserva.tiempo_inicio,
reserva.tiempo_final,
reserva.observaciones,
usuarios.primer_nombre,
espacios.nombre
from reserva
inner join usuarios on reserva.idusuarios = usuarios.idusuarios
inner join espacios on reserva.idespacios = espacios.idespacios
WHERE (reserva.fecha_inicio >= '$fechainicio' AND reserva.fecha_final <='$fechafinal')
LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$con);
echo $Resultado;
echo "<table class='agregar_administrador' align='center'>";
echo '<tr>
<td><b>Fecha inicio</b></td>
<td><b>Fecha final</b></td>
<td><b>Hora inicio</b></td>
<td><b>Hora final</b></td>
<td><b>Observaciones</b></td>
<td><b>Instructor encargado</b></td>
<td><b>Espacios</b></td>
</tr>';
while($MostrarFila=mysql_fetch_array($Resultado))
{
echo "<tr>";
echo "<td>".$MostrarFila['fecha_inicio']."</td>";
echo "<td>".$MostrarFila['fecha_final']."</td>";
echo "<td>".$MostrarFila['tiempo_inicio']."</td>";
echo "<td>".$MostrarFila['tiempo_final']."</td>";
echo "<td width=5% ><textarea rows=5cols=10 >".$MostrarFila['observaciones']."</textarea></td>";
echo "<td>".$MostrarFila['idusuarios']."</td>";
echo "<td>".$MostrarFila['idespacios']."</td>";
echo "</tr>";
}
echo "</table>";
//******--------determinar las páginas---------******//
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM reserva ",$con));
$PagAnt=$PagAct-1; $PagSig=$PagAct+1;
$PagUlt=$NroRegistros/$RegistrosAMostrar;
//verificamos residuo para ver si llevará decimales
$Res=$NroRegistros%$RegistrosAMostrar;
// si hay residuo usamos funcion floor para que me
// devuelva la parte entera, SIN REDONDEAR, y le sumamos
// una unidad para obtener la ultima pagina
if($Res>0) $PagUlt=floor($PagUlt)+1;
//desplazamiento
echo "<a onclick=\"Pagina('1')\"><font color='#000000'>Primero</font></a> ";
if($PagAct>1)
echo "<a onclick=\"Pagina('$PagAnt')\"><font color='#000000'>Anterior</font></a> ";
echo "<strong><font color='#000000'>Pagina ".$PagAct."/".$PagUlt."</font></strong>";
if($PagAct<$PagUlt)
echo " <a onclick=\"Pagina('$PagSig')\"><font color='#000000'>Siguiente</font></a> ";
echo "<a onclick=\"Pagina('$PagUlt')\"><font color='#000000'>Ultimo</font></a>";

?>
  #2 (permalink)  
Antiguo 29/10/2010, 12:29
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 13 años, 11 meses
Puntos: 23
Respuesta: Reserva

Cita:
pero no se como consultarla por dia de inicio de la reserva y fecha final
Pera ahi ya tienes el codigo de la consulta... Cuando ejecutas te sale algun error?? cual??
  #3 (permalink)  
Antiguo 29/10/2010, 12:41
 
Fecha de Ingreso: marzo-2010
Ubicación: medellin
Mensajes: 15
Antigüedad: 14 años
Puntos: 0
Respuesta: Reserva

hola gracias por tu aporte lo que pasa es que no me arroja resultados la consulta
  #4 (permalink)  
Antiguo 29/10/2010, 13:08
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Reserva

Saludos

Imprime tu consulta y ejecutala en phpmyadmin

Código PHP:
$consulta="SELECT reserva.fecha_inicio,
reserva.fecha_final,
reserva.tiempo_inicio,
reserva.tiempo_final,
reserva.observaciones,
usuarios.primer_nombre,
espacios.nombre
from reserva
inner join usuarios on reserva.idusuarios = usuarios.idusuarios
inner join espacios on reserva.idespacios = espacios.idespacios
WHERE (reserva.fecha_inicio >= '$fechainicio' AND reserva.fecha_final <='$fechafinal')
LIMIT $RegistrosAEmpezar, $RegistrosAMostrar"
;
echo 
$consulta;
$Resultado=mysql_query($consulta,$con) or die(mysql_error()); 
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #5 (permalink)  
Antiguo 29/10/2010, 13:14
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 13 años, 11 meses
Puntos: 23
Respuesta: Reserva

Ademas tu paginador no funcionara ya que debes enviar tambien al ajax las variables con las que estas condicionando la consulta o sea las fechas... pero primero prueba lo q te dijo Nano... Suerte
  #6 (permalink)  
Antiguo 29/10/2010, 14:28
 
Fecha de Ingreso: marzo-2010
Ubicación: medellin
Mensajes: 15
Antigüedad: 14 años
Puntos: 0
Respuesta: Reserva

catpaw gracias mi ajax es este

function objetoAjax()
{
var xmlhttp=false;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E)
{
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
} return xmlhttp;
}
function Pagina(nropagina)
{
//donde se mostrará los registros
divContenido = document.getElementById('contenido');
ajax=objetoAjax();
//uso del medoto GET
//indicamos el archivo que realizará el proceso de paginar
//junto con un valor que representa el nro de pagina
ajax.open("GET", "paginador.php?pag="+nropagina);
divContenido.innerHTML= '<img src="anim.gif">';
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
//mostrar resultados en esta capa
divContenido.innerHTML = ajax.responseText
}
}
//como hacemos uso del metodo GET
//colocamos null ya que enviamos
//el valor por la url ?pag=nropagina
ajax.send(null)
}

podrias hacerme el favor de decirme que debo de modificar gracias
  #7 (permalink)  
Antiguo 29/10/2010, 14:30
 
Fecha de Ingreso: marzo-2010
Ubicación: medellin
Mensajes: 15
Antigüedad: 14 años
Puntos: 0
Respuesta: Reserva

gracia me podrias decir como este es mi ajax:

function objetoAjax()
{
var xmlhttp=false;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E)
{
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
} return xmlhttp;
}
function Pagina(nropagina)
{
//donde se mostrará los registros
divContenido = document.getElementById('contenido');
ajax=objetoAjax();
//uso del medoto GET
//indicamos el archivo que realizará el proceso de paginar
//junto con un valor que representa el nro de pagina
ajax.open("GET", "paginador.php?pag="+nropagina);
divContenido.innerHTML= '<img src="anim.gif">';
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
//mostrar resultados en esta capa
divContenido.innerHTML = ajax.responseText
}
}
//como hacemos uso del metodo GET
//colocamos null ya que enviamos
//el valor por la url ?pag=nropagina
ajax.send(null)
}
  #8 (permalink)  
Antiguo 30/10/2010, 22:00
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 13 años, 11 meses
Puntos: 23
Respuesta: Reserva

Esto no lo podras probar hasta que tu consulta funcione...

tienes q enviar las variables fechainicio y fechafinal igual q envias el numero de pagina...
y en el ajax las recibes y las envias igual que el numero de pagina

Envias desde el php:
Código PHP:
echo " <a style='cursor:pointer' onclick=\"Pagina('$PagSig','$fechainicio','$fechafinal')\"><font color='#000000'>Siguiente</font></a> ";
//asi modifica las demas
//el style cursos pointer es para q salga la manita del cursor 
Recibes en el ajax:
Código:
function Pagina(nropagina,fechaini,fechafin)
Envias de nuevo al php:
Código:
ajax.open("GET", "paginador.php?pag="+nropagina+"&fechainicial="+fechaini+"&fechafinal="+fechafin,true);
Y ya con eso cada vez q se haga la peticion se enviaran las variables para q se realice la consulta, no se q tan bien este la sintaxis ya que puse todo de memoria... si hay algun error me dices...

Suerte

Etiquetas: Ninguno
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 00:37.