Foros del Web » Programando para Internet » PHP »

Mantener valor de un select despues de enviar

Estas en el tema de Mantener valor de un select despues de enviar en el foro de PHP en Foros del Web. tengo dos selects en un formulario, y un text box. cuando seleccionan los 2 selects y el form, y envian los datos, estois se envian ...
  #1 (permalink)  
Antiguo 16/05/2005, 11:18
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
Exclamación Mantener valor de un select despues de enviar

tengo dos selects en un formulario, y un text box.
cuando seleccionan los 2 selects y el form, y envian los datos, estois se envian a un script, y luego este vyuuelve a la pagina del formulario.

el caso es que una vez vuelve, quisiera que en el select primero permaneciera el mismo valor que se envio.

he probado a guardarel valor enviado con sesiones, pero luego no se recuperarlo...

Alguien sabe?
__________________
Share our Knowledge!
Adura Vita!

Última edición por Pazosele; 16/05/2005 a las 11:28
  #2 (permalink)  
Antiguo 16/05/2005, 11:20
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
los valores de los selects se cojen de una tabla sql. y se llenan con un while.... fetch array..... tipico.
__________________
Share our Knowledge!
Adura Vita!
  #3 (permalink)  
Antiguo 16/05/2005, 12:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Si indicas el código que has probado sería lo ideal .. Pero, como "técnica" podrías ver esta FAQ que usa la misma filosofía; se recarga a si mismo .. en ese caso, el detalle es que al "vovler" a tu formulario sea como sea: por una variable de sesión, cookie o por el URL simplemente has de hacerle llegar la variable=valor que tomó tu <select> seleccionado (valga la redundancia).

http://www.forosdelweb.com/f18/faqs-php-530600-post664999/

Un saludo,
  #4 (permalink)  
Antiguo 16/05/2005, 13:46
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
perdonar que este duplicado en javascript y en php, pero es simplemente porque acepto soluciones tantop php komo javascript, nosabia k no se podia poner 2 veces.
__________________
Share our Knowledge!
Adura Vita!
  #5 (permalink)  
Antiguo 16/05/2005, 13:51
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
Cluster, no es exactamente eso, ya que el problema es el mismo, como la pagina coje los datos de una tabla, no puedo darle el valor por defecto = al que me an puestoantes. pego el codigo para que entendais lo k quiero decir:

Código PHP:
$sSQL="Select * From ENQ_1 Order By Descripcio";
$dades=mssql_query($sSQL,$servidor);
mssql_query($sSQL,$servidor);
echo 'Enquesta<br>';
echo '<select name="IdEn">';
//Generamos el menu desplegable
while ($row=mssql_fetch_array($dades))
{  
    printf ('<option value="%s">%s</option>',$row["IdEn"] ,$row["Des"] );
    }
    mssql_free_result($dades); 
?>
</select> 
<br>
<?
$sSQL2
="Select * From ENQ_Pr Order By Enun";
$dades2=mssql_query($sSQL2,$servidor);
mssql_query($sSQL2,$servidor);
echo 
'Pregunta<br>';
echo 
'<select name="IdP">';
//Generamos el menu desplegable
while ($row=mssql_fetch_array($dades2))
{
printf ('<option value="%s">%s</option>',$row["IdP"] ,$row["Enun"] );
}
mssql_free_result($dades2);
__________________
Share our Knowledge!
Adura Vita!

Última edición por Pazosele; 16/05/2005 a las 15:23
  #6 (permalink)  
Antiguo 16/05/2005, 15:24
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
Lo del codigo del post anterior son los selects. Los cojo de una tabla SQL.

Si en la pagina siguiente, donde se envia el formulario guardo los posts como sesiones y los paso aqui, mantengo los valores, pero no se komo predefinirlos para que salgan seleccionados en los SELECTS...
__________________
Share our Knowledge!
Adura Vita!
  #7 (permalink)  
Antiguo 16/05/2005, 16:07
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 1 mes
Puntos: 10
no se si te entiendo bien, pero lo que deberias hacer es poner un condicional if que compare el valor que se esta imprimiendo en el option del select con el $row["IdP"] y si son iguales imprimir "selected"...

Perdona si conteste a otra cosa de la que preguntabas
__________________
oohh... quisiera ser godines!!!
  #8 (permalink)  
Antiguo 17/05/2005, 06:26
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
ya, pero esque es precisamente esto lo que no se hacer! es decir, yo puedo guardarel valor que me han seleccionado antes, pero como lo saco con un printf que esta dentro de un while(como veis en el codigo) pues no se como ponerle que me seleccione la que sea igual a la variable..
__________________
Share our Knowledge!
Adura Vita!
  #9 (permalink)  
Antiguo 17/05/2005, 06:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
En la FAQ que te indiqué tienes la técnica que es lo que te comenta safe:

Código PHP:
 While   ($registro_padre=mysql_fetch_assoc($consulta_padre  )){ 
      
// Se mira si el ID del registro es el mismo q el $id_padre q recibimos si hemos cambiado el select hijo. 
      // Se selecciona en consecuencia (selected) la opción elegida. 
      
if ($id_padre == $registro_padre['id']){ 
         echo 
"<option value=\"".$registro_padre['id']."\" selected>".$registro_padre['item_texto']."</option>\n"
      } else { 
         echo 
"<option value=\"".$registro_padre['id']."\">".$registro_padre['item_texto']."</option>\n"
      } 
    } 
   echo 
"</select>\n\n"


Intenta no usar "printf()" .. realmente es una función "más" potente para hacer otras cosas .. pero para hacer lo que estás haciendo, complica menos que uses simples "echo"

Donde dice "$id_padre" sería tu valor que te llaga por el URL, por GET/POST o viene en una sesión o cookie .. Se "compara" ese dato con el que vas "leyendo" de tu tabla para "componer" ese HTML .. si "coincide" la opción que estás generando con la que "tenía" en HTML colocamos el parámetro "selected".

Un saludo,

Un saludo,
  #10 (permalink)  
Antiguo 17/05/2005, 12:00
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
ok! muchas gracias, voy a probarlo!
__________________
Share our Knowledge!
Adura Vita!
  #11 (permalink)  
Antiguo 17/05/2005, 12:06
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 19 años
Puntos: 0
PERFECTO CLUSTER!
bueno, gracias a todos!!!
__________________
Share our Knowledge!
Adura Vita!
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 01:07.