Foros del Web » Programando para Internet » PHP »

Mostrar los datos de una tabla en un <select>

Estas en el tema de Mostrar los datos de una tabla en un <select> en el foro de PHP en Foros del Web. Hola, Pues bueno, mi interrogante es la siguiente, estoy trabajando en un formulario para crear consultas, y en el proceso me tope con una duda, ...
  #1 (permalink)  
Antiguo 10/09/2010, 13:48
 
Fecha de Ingreso: junio-2009
Mensajes: 75
Antigüedad: 14 años, 10 meses
Puntos: 0
Mostrar los datos de una tabla en un <select>

Hola,

Pues bueno, mi interrogante es la siguiente, estoy trabajando en un formulario para crear consultas, y en el proceso me tope con una duda, tengo la tabla llamada "dependencias" en MySQL, en el formulario debo poner un menu desplegable(<select>) el cual de la opcion de escojer alguna de las dependencias que se alojan en la tabla dependencias, sin embargo las dependencias son mas de 50, entonces quisiera saber si ahi alguna manera de crear un campo de <select> u opcion por cada campo existente en la tabla, osea que los campos de la tabla se muestren como opciones en el <select>, esto seria con PHP o con Javascript?

Si existe la manera, agradeceria ver o saber como o algo por el estilo.

Saludos y Gracías.
  #2 (permalink)  
Antiguo 10/09/2010, 13:56
 
Fecha de Ingreso: julio-2010
Ubicación: La Ciudad Blanca, Mérida-Yucatán
Mensajes: 375
Antigüedad: 13 años, 9 meses
Puntos: 7
Respuesta: Mostrar los datos de una tabla en un <select>

si se puede lo unico que tienes que hacer es hacer un select de tu tabla y despues crear un cilo para mostrar las opciones mira este ejemplo

Código PHP:
Ver original
  1. <select name="gui_uno">
  2.     <?php
  3.     $sql = "select * from guisos"; // select de tu tabla
  4.     $conta = mysql_query($sql,$conn);
  5.     while($guiso = mysql_fetch_array($conta)){ // ciclo para generar las opciones
  6.     echo "<option value=".$guiso['id_guiso']. ">".$guiso['desc_guiso']."</option>"; // aqui se crean todas las opciones del select
  7.     }
  8.     ?>
  9.     </select>

espero te sirva
saludos
__________________
--No todos aprendemos de la misma forma, ni a la misma velocidad---
  #3 (permalink)  
Antiguo 10/09/2010, 13:58
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años
Puntos: 36
Respuesta: Mostrar los datos de una tabla en un <select>

si amor se hace algo asi:

Código PHP:
<?php
//primero realizas la conexion
$a=mysql_query("select *from tabla");
echo 
'<select name="ejemplo">';
echo 
'<option value="0">Elige..</option>';
while(
$b=mysql_fetch_array($a)){
echo 
'<option value="'.$b['dato'].'">'.$b['dato'].'</option>';
}
echo 
'</select>';
?>
  #4 (permalink)  
Antiguo 13/09/2010, 15:59
 
Fecha de Ingreso: junio-2009
Mensajes: 75
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Mostrar los datos de una tabla en un <select>

Cita:
Iniciado por ylellan Ver Mensaje
si amor se hace algo asi:

Código PHP:
<?php
//primero realizas la conexion
echo '<select name="ejemplo">';
echo 
'<option value="0">Elige..</option>';
while(
$b=mysql_fetch_array($a)){
echo 
'<option value="'.$b['dato'].'">'.$b['dato'].'</option>';
}
echo 
'</select>';
?>
Hola, primero que nada gracías por responder, segundo quisiera saber si podrias resolverme algunas dudas que me surgieron con tu codigo, ya con las modificaciones optas para mi funcionamiento me tope con 2 dudas, modificado para mi uso se veria de la siguiente manera:

Código PHP:
            // Conexion al servidor y seleccion de base de datos
                
$conect mysql_connect('127.0.0.0''root''root');
                    if (!
$conect) {
                        die(
'Imposible conectar al servidor: ' mysql_error());
                    }
                
/*echo 'Conexión Exitosa!!';*/
                
            //seleccion de la BD
                
mysql_select_db('pruebadigeset',$conect) or die('No pudo seleccionarse la BD.');
            
// Realizar una consulta SQL
                
$consulta  'SELECT dependencias FROM catalogo de dependencias';
                
$resultado mysql_query($consulta) or die('La consulta fall&oacute;: ' mysql_error());
                                
                echo 
'<select name="dependencias">';
                    echo 
'<option value="0">Elige..</option>';
                    while(
$b=mysql_fetch_array($a)){
                echo 
'<option value="'.$b['dato'].'">'.$b['dato'].'</option>';
                        }
                echo 
'</select>';

// Liberar conjunto de resultados
mysql_free_result($resultado);

// Cerrar la conexion
mysql_close($conect); 
Bueno mi primera duda es en el siguiente fragmento, n mi caso de la tabla "catalogo_de_dependencias" solo debo traer el campo "dependencias", por lo tanto en la consulta quedaria de la siguiente manera(o eso quiero pensar):

Código PHP:
$consulta  'SELECT dependencias FROM catalogo_de_dependencias'
Mi segunda duda seria entonces en el siguiente fragmento:

Código PHP:
    while($b=mysql_fetch_array($a)){
    echo 
'<option value="'.$b['dato'].'">'.$b['dato'].'</option>';
    } 
Imagino que en "($b=mysql_fetch_array($a))", $b toma el valor del arreglo mysql_fetch_array en la posicion $a, entonces $a tomaria el valor del campo "dependencias" de mi tabla?, entonces en la parte :

Código PHP:
<option value="'.$b['dato'].'">'.$b['dato'].'</option>; 
¿'dato' que valor tomaria si $a esta tomando los valores de "dependecia"?

Pues esas son mis dudas, de antemano gracias por sus respuestas.

Saludos.
  #5 (permalink)  
Antiguo 13/09/2010, 16:12
Avatar de rickyper  
Fecha de Ingreso: abril-2009
Mensajes: 182
Antigüedad: 15 años
Puntos: 10
Respuesta: Mostrar los datos de una tabla en un <select>

Te dejo un ejemplo para que te ilustres mejor:

Código PHP:
Ver original
  1. $sql = "SELECT nick,email,url FROM directorio ORDER BY id ASC";
  2. $res= mysql_query($sql) or die (mysql_error());
  3. if( mysql_num_rows($res) >0){
  4.     //impresión de los datos.
  5.     while ($fila = mysql_fetch_array($res)) {
  6.         echo "nombre: ". $fila['nick'] . ", email: " . $fila['email'] . ", url: " . $fila['url'] . "<br>";         
  7.     }
  8. }else{
  9.     echo "no se obtuvieron resultados";
  10. }
  #6 (permalink)  
Antiguo 13/09/2010, 16:59
 
Fecha de Ingreso: junio-2009
Mensajes: 75
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Mostrar los datos de una tabla en un <select>

Hola,

Eh dejado el codigo de la siguiente manera:

Código PHP:
Ver original
  1. //seleccion de la BD
  2. mysql_select_db('pruebadigeset',$conect) or die('No pudo seleccionarse la BD.');
  3. // Realizar una consulta SQL
  4.     $consulta  = 'SELECT dependencia FROM catalogo_de_dependencias';
  5.     $resultado = mysql_query($consulta) or die('La consulta fall&oacute;: ' . mysql_error());
  6.                
  7.     echo '<select id="dep" name="dependencia">';
  8.     echo '<option value="0">Elige..</option>';
  9.         while($b = mysql_fetch_array($resultado)){
  10.               echo '<option value="'.$b[$resultado].'">'.$b[$resultado].'</option>';
  11.                         }
  12.     echo '</select>';

Me muestra ya la lista pero solo la primer linea y lo demas son puros como saltos de linea en blanco, por que no me mostrara los campos de la tabla?
  #7 (permalink)  
Antiguo 13/09/2010, 20:21
 
Fecha de Ingreso: junio-2009
Mensajes: 75
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Mostrar los datos de una tabla en un <select>

Amigos,

eh resolvido el problema y creo que me siento batante novato , pero bueno agradesco sus respuestas a los que contestaron y disculpen las molestias que pude haber causado.

Resulta que en value lo tenia value="", por lo tanto nunca me iba a mandar nada si no tenia un valor , jejeje novato no? :S, el codigo quedaria asi:


Código PHP:
Ver original
  1. // Realizar una consulta SQL
  2.                 $consulta  = 'SELECT dependencia FROM catalogo_de_dependencias';
  3.                 $resultado = mysql_query($consulta) or die('La consulta fall&oacute;: ' . mysql_error());
  4.                
  5.                 echo '<select id="dep" name="dependencia">';
  6.                     echo '<option value="0">Elige..</option>';
  7.                     while($b = mysql_fetch_array($resultado)){
  8.                     echo '<option value="'.$b["dependencia"].'">'.$b["dependencia"].'</option>';
  9.                         }
  10.                 echo '</select>';

Saludos.

Etiquetas: tablas
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 04:52.