Noticias Weblogs Foros Wiki Código
Sponsors:

Meta-Info

¿Que es?

Planeta Código es un agregador de weblogs sobre programación y desarrollo en castellano. Si eres lector te permite seguirlos de modo cómodo en esta misma página o mediante el fichero de subscripción.

rss subscripción

Sponsors

Anunciarse aquí

PlanetaCódigo en inglés

Puedes utilizar las siguientes imagenes para enlazar PlanetaCodigo:
planetacodigo

planetacodigo

Si tienes un weblog de programación y quieres ser añadido aquí, envíame un email solicitándolo.

Idea: Juanjo Navarro

Diseño: Albin

BLOG - 3wstudio.com.ar

Cargar un combo box con datos de una base de datos

Junio 29th, 2006 - [Enlace local]

Tener la posibilidad de llenar los combo box con información sacada de una base de datos es muy útil.

Si tomamos como ejemplo un blog, supongamos que tenemos la lista de categorias en la base de datos y queremos subir una nota, para eso debemos seleccionar a que categoria va a pertenecer, esto lo hacemos seleccionando una opcion de un combo box. Ahora bien, como llenamos este combo box?

La forma correcta de hacerlo sería la siguiente


<select name="categoria">
 <option value="0">Eliga una categor&iacute;a...</option> 
<?
//obtengo los datos de la base
$sql "SELECT * FROM categorias";
$r mysql_query($sql);
//mediante un while recorro todas las categorias y las imprimo en pantalla
while($row mysql_fetch_array($r)){
?>
  <option value="<?=$row["idCategoria"]?>"><?=$row["nombreCategoria"]?></option>
<?}?>
</select>
 

Como se ve no se utilizo "echo" para imprimir los datos en pantalla desde php, sino que se cerro y luego se abrio el codigo php. Esto permite poder leer mas facilmente el código.

A esto le faltaria una cosa... que pasaría si deseamos actualizar los estos datos??

Tendría que aparecer todos los campos del formulario cargados, incluyendo este combo box con la opción elegida seleccionada. Para hacer eso tendriamos que modificar un poquito lo anterior


<?
<option value="<?=$row["idCategoria"]?>" <?if($row["idCategoria"]=="valor"){?>selected="selected"<?}?>><?=$row["nombreCategoria"]?></option>
?>

De forma sencilla tenemos los datos de la base en nuetro combo box 

» Leer más, comentarios, etc...