¡REGISTROS PRÓXIMAMENTE!          
 
Home  ::  Libro de visitas  ::  Visitas: 54082  ::  Usuarios on-line: 3
CATEGORÍAS

OTRAS SECCIONES

TAGBOARD

ENLACES

ENCUESTA

CALENDARIO

Scripts de programación :: MYSQL
Diversos scripts de programación en web para webmasters. PHP, MYSQL, ASP, JAVASCRIPT, JAVA, ACTIONSCRIPT, CSS, XML, etc; para desarrollar páginas web dinámicas copiando y pegando el código en tus páginas.

Disponemos de una sección de documentación para ayudar a webmasters o usuarios de páginas web a mejorar el posicionamiento en buscadores de la importancia de Google

Ayúdanos a crecer!, envíanos tus scripts de programación a la dirección admin@jaterli.com indicando en el asunto a la categoría a la que pertenece. Lo publicaré en esta web tan pronto como pueda.

 

Crear un campo SELECT con valores de una base de datos

Aumentar tamaño de fuente Restablecer tamaño de fuente Disminuir tamaño de fuente

En el interior se encuentra una función que escribirá, en un formulario, un 
campo select con valores resultado de la devolución de una consulta. Cómodo 
y efectivo.


Durante el trabajo con formularios en PHP, en muchas ocasiones tenemos un 
campo select cuyos valores posibles se obtienen de una base de datos, por 
ejemplo, los países. En este taller vamos a mostrar una función que es 
capaz de escribir en un formulario un campo de select, obteniendo los 
valores de una tabla de la base de datos. Con esta función podemos 
olvidarnos de la complejidad de mostrar un campo select. Simplemente 
llamamos a la función, enviando los parámetros, y se encarga de mostrar el 
campo.

En el caso de los países, puede que sea una buena idea tener una tabla con 
la lista de países del mundo. En el formulario lo habitual es permitir 
escoger un país de la lista y enviar el código del país. De modo podemos 
estar seguros de que todos los usuarios han elegido un país de la lista, 
entre todos los posibles.

La tabla de países podría contener algo como esto:

id_pais     nombre_pais
1     España
2     México
3     Argentina
4     Colombia
5     Chile

... ...

Este es el código HTML de un posible formulario cuyo campo de países ha 
sido extraído de la anterior tabla:

<form>
Nombre: <input type=text name="nombre">
<br>
País:
<select name=id_pais>
   <option value=1>España
   <option value=2>México
   <option value=3>Argentina
   <option value=4>Colombia
   <option value=5>Chile ...
</select>

Función saca_menu_desplegable()

Ahora vamos a ver cómo se haría la función que recorre la tabla de la base 
de datos para mostrar el select del país. Para empezar vamos a ver una 
lista de los parámetros que acepta.

    * ssql: sentencia SQL que permita extraer los datos de las posibles 
opciones del select. La sentencia SQL tendría una forma como esta "select 
id_pais, nombre_pais from pais". En la primera columna de los registros 
seleccionados con esta sentencia, se espera el value de los option (en este 
caso id_pais). En la segunda columna se espera el texto de los option.

    * valor: En este parámetro se recibe el valor predeterminado que debe 
aparecer en el select. Este valor se compara con el primer campo de la 
sentencia SQL. (Si deseamos que el valor predeterminado fuera "España", 
deberíamos poner un 1 como valor)

    * nombre: Es el nombre que se le da al campo select de formulario 

El código de la función es el siguiente:

<?
function saca_menu_desplegable($ssql,$valor,$nombre){
   echo 
"<select name='$nombre'>";
   
$resultado=mysql_query($ssql);
   while (
$fila=mysql_fetch_row($resultado)){
     if (
$fila[0]==$valor){
       echo 
"<option selected value='$fila[0]'>$fila[1]";
     }
     else{
       echo 
"<option value='$fila[0]'>$fila[1]";
     }
  }
   echo 
"</select>";
}
?>

Se escribe el campo de formulario select, indicando el nombre del campo que 
se ha recibido por parámetro. Luego se realiza una búsqueda en la base de 
datos, ejecutando la sentencia SQL recibida por parámetro.

Más tarde se hace un recorrido del conjunto de registros que se han 
encontrado en la base de datos y se escriben cada uno de los option. Para 
cada uno de los registros se comprueba si su identificador es igual al que 
se desea marcar como valor predeterminado. En caso de serlo, se escribe el 
option con el atributo selected.

Un detalle importante es que la función necesita tener una conexión abierta 
con la base de datos, pues en caso contrario no se podría ejecutar la 
sentencia SQL.

 

 

[ Regresar a la categoría ]

 

 

Si deseas colaborar enviando tu artículo, puedes acerlo a esta dirección de correo: admin@jaterli.com Será revisado y publicado tan pronto como nos sea posible. Gracias!!