Hola de nuevo amigos de Foros del web.
Me dirijo a vosotros en busca de una solucion a este quebradero de cabeza que tengo.
Resulta que estoy haciendo una web para un hotel, y en el panel del body tengo un formulario de comprobacion de disponibilidad en la que pido lo siguiente:
les pongo el codigo:
Código HTML:
<div class="panel">
<script type="text/javascript">
<!--
jQuery(document).ready(function() {
// calendarios
/* Inicialización en español para la extensión 'calendar' para jQuery. */
popUpCal.regional['es'] = {clearText: 'Limpiar', closeText: 'Cerrar',
prevText: '<Ant', nextText: 'Sig>', currentText: 'Hoy',
dayNames: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio',
'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre']};
popUpCal.setDefaults(popUpCal.regional['es']);
popUpCal.setDefaults({autoPopUp: 'both', buttonImageOnly: true,
buttonImage: 'http://www.hotelsanroque.es/imagenes/tarifas-reservas/calendario.gif', buttonText: 'Calendar', showOtherMonths: true});
$('.invokeBoth').calendar({ firstDay: 1 });
// fin calendarios});
});
//-->
function checkDates()
{
cortar();
if (fechaentradanueva == fechasalidanueva )
{
alert("Las fechas son iguales. Debe de transcurrir al menos 1 día entre la fecha de entrada y la fecha de salida. Por favor, elija otra fecha de salida o cambie la fecha de entrada.");
document.reserva.comprobar.disabled = true;
}
else
{
if ( fechaentradanueva > fechasalidanueva)
{
alert("La fecha de salida tiene que ser más tarde que la fecha de entrada. Por favor, elija otra fecha de salida o cambie la fecha de entrada.");
document.reserva.comprobar.disabled = true;
}
else
{
document.reserva.comprobar.disabled = false;
}
}
}
function cortar()
{
fechaentradacortada = document.getElementById("fechaentrada").value.split("/");
fechaentradanueva = fechaentradacortada[2] + fechaentradacortada[1] + fechaentradacortada[0];
fechasalidacortada = document.getElementById("fechasalida").value.split("/");
fechasalidanueva = fechasalidacortada[2] + fechasalidacortada[1] + fechasalidacortada[0];
}
function prueba()
{
alert (document.reserva.tiphab.value)
alert (document.reserva.nombre.value)
alert (document.reserva.apel.value)
alert (document.reserva.numpers.value)
alert (document.reserva.fechasalida.value)
alert (document.reserva.fechaentrada.value)
}
</script>
<h3 align="center">Compruebe Disponibilidad</h3>
<form name="reserva" method="post" action="verificacion.php" onsubmit="prueba()">
<table class="pan">
<tr>
<td class="name">Nombre:</td>
<td class="input"><input type="text" name="nombre" /></td>
</tr>
<tr>
<td class="name">Apellidos:</td>
<td class="input"><input type="text" name="apel" /></td>
</tr>
<tr>
<td class="name">Número de personas:</td>
<td class="input"><input type="text" name="numpers" /></td>
</tr>
<tr>
<td class="name">Tipo de habitación:</td>
<td class="input"><Select name="tiphab" id="tiphab">
<OPTION value="individual">Individual</OPTION>
<OPTION VALUE="doble">Doble</OPTION>
<OPTION VALUE="matrimonio">Matrimonio</OPTION>
<OPTION VALUE="triple">Triple</OPTION>
<OPTION VALUE="suite">Suite</OPTION>
</Select></td>
</tr>
<tr>
<td class="name">Fecha Entrada:</td>
<td class="input"><input type="text" class="invokeBoth" name="fechaentrada" id="fechaentrada" value="<?=date("d/m/Y");?>" onChange="checkDates();" /></td>
</tr>
<tr>
<td class="name">Fecha Salida:</td>
<td class="input"><input type="text" class="invokeBoth" name="fechasalida" id="fechasalida" value="<?=strftime("%d/%m/%Y", (time() + 24*60*60));?>" onChange="checkDates();" /></td>
</tr>
<tr>
<td></br></br></br></td>
<td class="input"> <input type="submit" name="comprobar" id="comprobar" /></td>
</tr>
</table>
</form>
</br>
</br>
</br>
</br>
<div style="text-align:center;">
<font color="#FF0000" size="4">
<?=$_GET["error"];?>
</font>
</div>
</div>
el problema es que al hacer el click en el submit manda todo el contenido del form a otra pagina en php para que haciendo una query a mi bbdd en mysql preguntar si hay habitaciones libres, si las hay me manda en la misma pagina que tiene habitaciones libres y si no me manda un mensaje al panel de que no hay habitaciones libres. El problema esq no manda bien el contenido del select al php. Os pongo el codigo y las imagenes:
Código PHP:
<?php
$conexion = mysql_connect("db427201309.db.1and1.com", "dbo427201309", "joeloiane") or die ("No se pudo conectar: " . mysql_error());
mysql_select_db("db427201309") or die ("No se pudo seleccionar la base de datos");
$name = (string) $_POST["nombre"];
$apel = (string) $_POST["apel"];
$numpers = (string) $_POST["numpers"];
$tiphab = (string) $_POST["tiphab"];
$fecent = (string) $_POST["fechaentrada"];
$fecsal = (string) $_POST["fechasalida"];
$checkroom = mysql_query("SELECT * FROM Habitaciones WHERE hab_tipo='$tiphab' AND hab_res='No'");
$room_res = mysql_num_rows($checkroom);
if ($room_res>0) {
header("Location:verificacion.php?exito=Hay habitaciones disponibles. Haga click en Reservar para acceder al formulario de reserva o haga click en Volver para volver a la página principal.");
}else{
header("Location:index.php?error=Lo sentimos, no hay habitaciones de tipo " .$tiphab. " en las fechas seleccionadas. Cambie las fechas o el tipo de habitación para volver a ver disponibilidad.");
}
?>
<?php
include './includes/header.php';
?>
<div class="body">
<?=$_GET["exito"];?>
<form name="chester" action="reserva.php" method="post">
<table>
<tr>
<td><input type="button" name="volver" id="volver" value="Volver" /></td>
<td><input type="submit" name="reservar" id="reservar" value="Reservar" /></td>
</tr>
</table>
</form>
</div>
<?
include './includes/footer.php';
?>
Muchas gracias adelantadas por la ayuda que me puedan ofrecer. Es un poquito urgente :)