Foros del Web » Programando para Internet » PHP »

Mostrar seleccionado una opcion de un selet al recibir un datos de un BD

Estas en el tema de Mostrar seleccionado una opcion de un selet al recibir un datos de un BD en el foro de PHP en Foros del Web. Hola a todos! aki otra vez...con una duda mas.. Tengo un formulario para modificar registros el cual RECIBI DATOS, y en dicho formulario utilizo un ...
  #1 (permalink)  
Antiguo 24/07/2008, 15:53
 
Fecha de Ingreso: abril-2008
Mensajes: 9
Antigüedad: 11 años, 10 meses
Puntos: 0
Mostrar seleccionado una opcion de un selet al recibir un datos de un BD

Hola a todos!

aki otra vez...con una duda mas..

Tengo un formulario para modificar registros el cual RECIBI DATOS, y en dicho formulario utilizo un select para desplegar las opciones del campo
ESTUDIO:
  • primaria
  • secundaria
  • Preparatoria
  • Profesional
  • Otros

mi deseo es que se muestre seleccionada la opcion que ah sido registrada anteriormente...me doy a entender???...osea el formulario se va a mostrar lleno..con cada uno de sus campos correspondientes a tal registro...este formulario incluye campos de texto y eso ya me los muestra asi...solo que con el select no se como....podria ayudarme alguien?????

Esto es lo que se me ocurre a mi cerebor novato en estas ondas:



Código PHP:
[PHP]<? echo "<select name='estudio' class='estudio' id='estudio' value='$row[50]'>"?>
                   <option <? if("$row[50]"=='primaria')?> selected='selected'>Primaria</option>
                   <option <? if("$row[50]"=='secundaria')?> selected='selected'>Secundaria</option>
                   <option <? if("$row[50]"=='preparatoria')?> selected='selected'>Preparatoria</option>
                   <option <? if("$row[50]"=='profesional')?> selected='selected'>Profesional</option>
                   <option <? if("$row[50]"=='otros')?> selected='selected'>Otros</option>
                   <? echo "</select>"?>
[/PHP]


COMO VEN???
  #2 (permalink)  
Antiguo 24/07/2008, 18:00
 
Fecha de Ingreso: junio-2007
Ubicación: Buenos Aires, Argentina
Mensajes: 262
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Mostrar seleccionado una opcion de un selet al recibir un datos de un BD

Eso es una opción. También podés armar un array con todas las opciones y procesarlas antes de armar el HTML del select. No sé si vas a ahorrar muchas líneas de código, pero seguro vas a hacer más entendible el programa cuando lo releas.

Saludos,
Pablo
__________________
Moebius Digital | La pieza que faltaba
Diseño web | Web hosting
  #3 (permalink)  
Antiguo 24/07/2008, 18:06
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.990
Antigüedad: 15 años
Puntos: 80
Respuesta: Mostrar seleccionado una opcion de un selet al recibir un datos de un BD

Es que si haces eso, solo te mostrara la seleccionada y nada mas... Deberias hacer el if y else respectivo, algo asi:
Código PHP:
<? echo "<select name='estudio' class='estudio' id='estudio'>"?>
<option <? if(strtolower($row[50]) == 'primaria'){?>selected='selected'>Primaria</option><?}else{?>>Primaria</option><?}?>
<option <? if(strtolower($row[50]) == 'secundaria'){?>selected='selected'>Secundaria</option><?}else{ ?>>Secundaria</option><?}?>
<option <? if(strtolower($row[50]) == 'preparatoria'){?>selected='selected'>Preparatoria</option><?}else{ ?>>Preparatoria</option><?}?>
<option <? if(strtolower($row[50]) == 'profesional'){?>selected='selected'>Profesional</option><?}else{ ?>>Profesional</option><?}?>
<option <? if(strtolower($row[50]) == 'otros'){?>selected='selected'>Otros</option><?}else{?>>Otros</option><?}?>
<? 
echo "</select>"?>
Y para una mejor presentacion:
Código PHP:
<?
$select 
'<select name="estudio" class="estudio" id="estudio">';
if(
strtolower($row[50]) == 'primaria'){
    
$primaria 'selected';
}elseif(
strtolower($row[50]) == 'secundaria'){
    
$secundaria 'selected';
}elseif(
strtolower($row[50]) == 'preparatoria'){
    
$preparatoria 'selected';
}elseif(
strtolower($row[50]) == 'profesional'){
    
$profesional 'selected';
}elseif(
strtolower($row[50]) == 'otros'){
    
$otros 'selected';
}
$select .= '
    <option '
.$primaria.' value="'.$row[50].'">Primaria</option>
    <option '
.$secundaria.' value="'.$row[50].'">Secundaria</option>
    <option '
.$preparatoria.' value="'.$row[50].'">Preparatoria</option>
    <option '
.$profesional.' value="'.$row[50].'">Profesional</option>
    <option '
.$otros.' value="'.$row[50].'">Otros</option>
</select>'
;
echo 
$select;
?>
El value= que tienes puesto en el select no se usa... se usa el value en los option...

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
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 02:21.