PHP - Fechas y Combos anidados

 
Vista:

Fechas y Combos anidados

Publicado por Maria (1 intervención) el 04/02/2007 22:45:24
Hola, estoy intentando poner dos combos, uno que se llama dias1 y otro meses1.
La idea es que inicialmente se llene el combo dias1 con los 31 dias del mes de Enero y el combo meses1 arranque con la opcion elegida Enero.

Lo que quiero es que:
Al seleccionar un día del combo dias1 y un mes del combo meses1, se muestre en el combo de dias el dia elegido y la cantidad de dias que le corresponden a ese mes.
Ej: si elijo el dia 28 y el mes de Febrero, que aparezca el día 28 seleccionado en el combo dias1 y alli solo hasta 28 dias y en el combo meses1 el mes de febrero. Asi sucesivamente para los meses que tengan 30 y 31 dias.

Solo puedo hacer:
1.Que se llene el combo inicial con los 30 dias
2. Que al actualizar un mes en particular se muestren en el combo dias1 los dias que le corresponden, Ej Mayo: 31 dias, Noviembre:30 dias y Febrero 28 dias.

No puedo hacer:
1.Que se muestre el dia elegido: Ej 5 de febrero, eso si, pero si dejo el dia 5 y ahora cmabio a Marzo, SIEMPRE VUELVE A 1 O SEA SIEMPRE PIERDO EL VALOR DEL DIA SELECCONADO AL ELEGIR UN MES EN PARICULAR, y me llena el combo con los 31 dias de marzo pero perdi la seleccion del dia 5, ahora tengo dia 1 mostrado.

Recupero los meses de una tabla y los dias los cargue manualmente. Anexo el codigo por si alguien tiene idea de cual puede ser el error, o sepa orientarme. Desde ya GRACIAS!

<?php require_once('../../../Connections/connTuCD.php'); ?>
<?php
mysql_select_db($database_connTuCD, $connTuCD);
$query_rMeses = "SELECT * FROM meses ORDER BY idmes ASC";
$rMeses = mysql_query($query_rMeses, $connTuCD) or die(mysql_error());
$row_rMeses = mysql_fetch_assoc($rMeses);
$totalRows_rMeses = mysql_num_rows($rMeses);
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>TuCD.com - Administración de Contenido</title>
<style type="text/css" media="all">
<!--
@import url("estilos.css");
-->
</style>
</head>
<body>
<p> </p>
<form action="" method="post" name="form1" >
<p>
<p>Desde:
<select name="dias1" id="dias1">
<?php
switch($_POST['meses1']) {
case 0:
?>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="18">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
<?php
break;
case 1:
?>
<option selected value="<?php $_POST['dias1'] ?>"><?php echo $_POST['dias1']?></option>
<?php
break;

case 2:
?>
<option selected value="<?php $_POST['dias1'] ?>"><?php echo $_POST['dias1']?></option>
<?php
break;

case 3:
for($i=1;$i<=31;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 4:
for($i=1;$i<=30;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 5:
for($i=1;$i<=31;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 6:
for($i=1;$i<=30;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 7:
for($i=1;$i<=31;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;
case 8:
for($i=1;$i<=31;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 9:
for($i=1;$i<=30;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 10:
for($i=1;$i<=31;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 11:
for($i=1;$i<=30;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;

case 12:
for($i=1;$i<=31;$i++) {
if ($i == $_POST['dias1']) {
?>
<option selected value="<?php $i ?>"><?php echo $i?></option>
<?php
}
else {
?>
<option value="<?php $i ?>"><?php echo $i?></option>
<?php
}
}
break;
}
?>
</select>
<select name="meses1" id="meses1" onchange="submit()" >
<?php

do {

?>
<option value="<?php echo ($row_rMeses['idmes'])?>"<?php if (!(strcmp($row_rMeses['idmes'], $_POST['meses1']))) {echo "selected";}?>><?php echo $row_rMeses['nommes']?></option>
<?php
} while ($row_rMeses = mysql_fetch_assoc($rMeses));
$rows = mysql_num_rows($rMeses);
if($rows > 0) {
mysql_data_seek($rMeses, 0);
$row_rMeses = mysql_fetch_assoc($rMeses);
}
?>
</select>
<select name="anios1" id="anios1">
<option value="2006">2006</option>
<option value="2007">2007</option>
</select>
       
</form>
<p> </p>
<p> </p>
</body>
</html>
<?php

mysql_free_result($rMeses);
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder