Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/11/2009, 10:08
Avatar de JOSANCIN
JOSANCIN
 
Fecha de Ingreso: septiembre-2008
Ubicación: huesca
Mensajes: 298
Antigüedad: 15 años, 8 meses
Puntos: 0
Extraño error con selected en un formulario (select)

Hola a todos

Tengo un formulario con un desplegable que lee los valores de una tabla que tiene de campos dia,mes y anio.
La idea es que cuando selecciono una fecha y envio el valor la siguiente vez que quiera seleccionar una fecha aparezca por defecto la que he puesto la vez anterior.
Si yo le doy a las variables de sesion valores funciona perfectamente pero no funciona cuando estas tienen que almacenar los valores que yo le envio con post, el error que aparece es el siguiente:

4
Notice: Undefined index: dia in C:\wamp\www\resultados\index.php on line 159
- 8
Notice: Undefined index: mes in C:\wamp\www\resultados\index.php on line 169
- 2015
Notice: Undefined index: anio in C:\wamp\www\resultados\index.php on line 179


el script es el siguiente:

<?php

abro una sesion para que almacene en variables de sesion los valores que le envio con el formulario:

session_name("sesion");
session_start();
if (isset($_POST["dia"]) && isset($_POST["mes"]) && isset($_POST["anio"])){
$_SESSION["dia"]=$_POST["dia"];
$_SESSION["mes"]=$_POST["mes"];
$_SESSION["anio"]=$_POST["anio"];
}


le indico al formulario que tome como valor seleccionado el valor de la variable de sesion:

$resultado=mysql_query("select * from tiempo order by dia")

echo '<form method="post" action="">';

echo "<select name='dia' id='dia'>";
while($fila=mysql_fetch_array ($resultado)){
echo "<option value='".$fila["dia"];
if($fila["dia"]==$_SESSION["dia"]) echo " selected='selected'";
echo "'> " .$fila["dia"]. "</option>";
}
echo "</select>";

mysql_data_seek ($resultado, 0);

echo "<select name='mes' id='mes'>";
while($fila=mysql_fetch_array ($resultado)){
echo "<option value='".$fila["mes"];
if($fila["mes"]==$_SESSION["mes"]) echo " selected='selected'";
echo "'> " .$fila["mes"]. "</option>";
}
echo "</select>";

mysql_data_seek ($resultado, 0);

echo "<select name='anio' id='anio'>";
while($fila=mysql_fetch_array ($resultado)){
echo "<option value='".$fila["anio"];
if($fila["anio"]==$_SESSION["anio"]) echo " selected='selected'";
echo "'> " .$fila["anio"]. "</option>";
}

echo "</select>";

echo '</form>';

Muchas gracias a todos de antemano

?>