Foros del Web » Programando para Internet » PHP »

Como mantener seleccionado un combo box

Estas en el tema de Como mantener seleccionado un combo box en el foro de PHP en Foros del Web. Buenas , miren de un formulario de registro lleno los datos todo bien ... hay un combo box donde selecciono el sexo ..supongamos que elijo´´Hombre´´ ...
  #1 (permalink)  
Antiguo 05/03/2013, 04:32
 
Fecha de Ingreso: febrero-2013
Mensajes: 78
Antigüedad: 11 años, 2 meses
Puntos: 0
Como mantener seleccionado un combo box

Buenas , miren de un formulario de registro lleno los datos todo bien ...
hay un combo box donde selecciono el sexo ..supongamos que elijo´´Hombre´´

luego supongamos que puse mal el correo electronico ... entonces le doy a

´´Registrarme´´

y me sale el error que el correo no es valido , ok ese no es el asunto

quiero que el sexo que puse se quede ya seleccionado

ok les digo que ya guarde el sexo en una variable ... y la mando de nuevo
osea si se guarda , pero en el combo box se queda en

´´Seleccione su sexo ´´

Doy a registrarme y cuando voy a la base de datos veo que efectivamente
si se quedo guardado el value de hombre ...

pero yo quiero que cuando cargue la página siga saliendo la opcion que elegi


ya que se queda en ´´Seleccione su sexo´´



como deberia de ponerlo ?

eh intentado de estas dos formas



<option value=<?php echo $sexo1;?>,"selected"> Selecciona el sexo:</option>




y asi


<option selected="selected" value='<?php echo $sexo1 ?>'>Selecciona el sexo:</option>



donde dice $sexo1 es donde se quedo guardado el value que elegi



solo necesito que me ayuden como debo de excribirlo correctamente

gracias ...
  #2 (permalink)  
Antiguo 05/03/2013, 07:10
Avatar de JaimeMSE  
Fecha de Ingreso: diciembre-2010
Ubicación: Isla Cristina (Huelva)
Mensajes: 164
Antigüedad: 13 años, 4 meses
Puntos: 7
Respuesta: Como mantener seleccionado un combo box

No logro entender muy bien lo que quieres hacer.

Creo que quieres algo así

Código HTML:
<select name="sexo">
<option value="seleccione">--Seleccione el sexo--</option>
<option value="hombre">Hombre</option>
<option value="mujer">Mujer</option>
</select> 
Hasta ahí todo normal, ahora si quieres seleccionar uno obteniendo el valor de la base de datos o de cualquier vairable sería algo así:

Código PHP:
<?php $sexo1 'hombre'?>
<select name="sexo">
<option value="seleccione">--Seleccione el sexo--</option>
<option value="hombre" <?php if($sexo1 == 'hombre') { echo "selected'"; } ?>>Hombre</option>
<option value="mujer" <?php if($sexo1 == 'mujer') { echo "selected"; } ?>>Mujer</option>
</select>
__________________
@JaimeMSE - ¡Sígueme!
  #3 (permalink)  
Antiguo 05/03/2013, 08:03
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: Como mantener seleccionado un combo box

Yo lo haria un pelin mas prolijo con el operador ternario

Código PHP:
Ver original
  1. <?php $sexo1 = 'hombre'; ?>
  2. <select name="sexo">
  3. <option value="seleccione">--Seleccione el sexo--</option>
  4. <option value="hombre" <?php $sexo1 == 'hombre'? echo 'selected="selected"':null; ?> >Hombre</option>
  5. <option value="mujer" <?php $sexo1 == 'mujer'? echo 'selected="selected"':null; ?> >Mujer</option>
  6. </select>
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #4 (permalink)  
Antiguo 05/03/2013, 09:37
 
Fecha de Ingreso: febrero-2013
Mensajes: 78
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Como mantener seleccionado un combo box

Bueno , ya habia logrado resolver eso del sexo
crei que iva a poder hacerlo de la misma forma con los otros combo box y solo pude hacerlo con el de meses

ahora me falta el de dias ....


tengo este combo box de ´´DIAS´´

Código PHP:
Ver original
  1. <select name="dias" id="dias"  >
  2.       <option value="">Dias</option>
  3.      
  4.       <?php
  5.      
  6.        for($d = 1; $d <= 31; $d++)
  7.        {  
  8.      
  9.        ?>
  10.        <option value="<?php echo $d ?>"><?php echo $d ?></option>
  11.        <?php
  12.        
  13.      
  14.      
  15.         if($dias1==$d){
  16.         ?>
  17.        
  18.         <option selected="selected" value="<?php echo $d ?>"><?php echo $d ?></option>
  19.        
  20.        
  21.       <?php
  22.        }
  23.        }
  24.        
  25.        ?>
  26.        </select>


funciona bien , solo hay un pequeño problema
cuando escojo un dia , por ejemplo el dia 1

al momento de cargar la página sale asi por ejemplo :

1 <--- bien ,mi numero sale seleccionado ,


Dia <--- pero cuando abro el combo salen asi
1
1
2
3
4
5
6
7
.
.
.

Si escojo el dia 2 sale asi

2

Dia
1
2
2
3
4
5
6
7
.
.
.
como veran , el numero seleccionado se repite en el combo

obviamente ya se donde esta mi problema
mi problema esq estoy dando un selected de nuevo a un numero y ala ves ordena todo el for


Tengo una forma que me resolveria altoke pero seria bien largo ....
quisiera algo mas sencillo

no se si alguno sabra para que no se repita el dia ...

Última edición por awik; 05/03/2013 a las 09:42
  #5 (permalink)  
Antiguo 05/03/2013, 19:33
Avatar de JaimeMSE  
Fecha de Ingreso: diciembre-2010
Ubicación: Isla Cristina (Huelva)
Mensajes: 164
Antigüedad: 13 años, 4 meses
Puntos: 7
Respuesta: Como mantener seleccionado un combo box

Ahí lo llevas:

Código PHP:
<select name="dias" id="dias"  >
    <option value="">Dias</option>
<?php
$dias1 
'1';

for(
$d 1$d <= 31$d++)
{   
    if(
$dias1==$d)
    {
    
?>
        <option selected="selected" value="<?php echo $d ?>"><?php echo $d ?></option>
    <?php
    
}
    else
    {
    
?>
        <option value="<?php echo $d ?>"><?php echo $d ?></option>
    <?php
    
}
}
?>
</select>
__________________
@JaimeMSE - ¡Sígueme!
  #6 (permalink)  
Antiguo 05/03/2013, 19:48
 
Fecha de Ingreso: febrero-2013
Mensajes: 78
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Como mantener seleccionado un combo box

Cita:
Iniciado por JaimeMSE Ver Mensaje
Ahí lo llevas:

Código PHP:
<select name="dias" id="dias"  >
    <option value="">Dias</option>
<?php
$dias1 
'1';

for(
$d 1$d <= 31$d++)
{   
    if(
$dias1==$d)
    {
    
?>
        <option selected="selected" value="<?php echo $d ?>"><?php echo $d ?></option>
    <?php
    
}
    else
    {
    
?>
        <option value="<?php echo $d ?>"><?php echo $d ?></option>
    <?php
    
}
}
?>
</select>
gracias pero ahora siempre me sale 1
esq estas poniendo $dias1 = 1;
  #7 (permalink)  
Antiguo 05/03/2013, 19:52
Avatar de JaimeMSE  
Fecha de Ingreso: diciembre-2010
Ubicación: Isla Cristina (Huelva)
Mensajes: 164
Antigüedad: 13 años, 4 meses
Puntos: 7
Respuesta: Como mantener seleccionado un combo box

Cita:
Iniciado por awik Ver Mensaje
gracias pero ahora siempre me sale 1
esq estas poniendo $dias1 = 1;
Claro, siempre te sale uno porque te he creado la variable $dias1 y ahí le he dado el valor 1.

A esa variable (o a otra, sólo le tienes que cambiar el nombre) le pasas el valor que quieras y ya se queda seleccionado.
__________________
@JaimeMSE - ¡Sígueme!
  #8 (permalink)  
Antiguo 05/03/2013, 20:30
 
Fecha de Ingreso: febrero-2013
Mensajes: 78
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Como mantener seleccionado un combo box

No pero no se trata de eso ,,,

necesito q $dias1 sea igual a los numeros del 1 al 31
cree otro for

for($d1 = 1; $d1 <= 31; $d1++)
{
$dias1=$d1;


la cosa q cuando compare , saldra cualquier numero que haya seleccionado del 1 al 31
pero no me sale ...
  #9 (permalink)  
Antiguo 06/03/2013, 00:51
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años
Puntos: 33
Respuesta: Como mantener seleccionado un combo box

Buenas!

A ver si puedo ayudar un poco...

Para los días, deberías hacer algo así:

Código PHP:
Ver original
  1. //$diaSel es la variable que tiene el día que se ha de seleccionar
  2.  
  3. for($i=0;$i<31;$i++){
  4.   $sel = '';
  5.  
  6.   if($i == $diaSel)
  7.     $sel = ' selected ';
  8.  
  9.   echo('<option value='.$i.$sel.'>'.$i.'</option>';
  10. }
  11.  
  12. Así debería funcionar.
  13.  
  14. Saludos

Etiquetas: box, combo, formulario, registro, seleccionado, select
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:12.