Foros del Web » Programando para Internet » PHP »

Relacionar Select con otro Select

Estas en el tema de Relacionar Select con otro Select en el foro de PHP en Foros del Web. Hola a todos, necesito que al seleccionar una opción de un select muestre en otro select las opciones relacionadas. Ejemplo desde un select "paises" marco ...
  #1 (permalink)  
Antiguo 04/08/2003, 12:29
 
Fecha de Ingreso: noviembre-2002
Mensajes: 190
Antigüedad: 15 años
Puntos: 0
Busqueda Relacionar Select con otro Select

Hola a todos, necesito que al seleccionar una opción de un select muestre en otro select las opciones relacionadas. Ejemplo desde un select "paises" marco Argentina y en el Select "provincias" de alado me tiene que mostrar todas las provincias de argentina.

Esto lo leí en el foro hace unos dias, pero ahora no lo puede encontrar (estaba comentado por cluster creo y buscar "cluster" y "select o mysql" no me va a convenir, ejeje , ¿alguien lo tiene idea cual es el link? o ¿o como se hace?

Saludos y muchas gacias
  #2 (permalink)  
Antiguo 04/08/2003, 12:46
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 15 años, 10 meses
Puntos: 5
Buscalo como post de Biblio, el es el que posteo una solucion que combinaba PHP y Javascript.

Ademas en las FAQ se encuentra un ejemplo con solo PHP...

__________________
Manoloweb
  #3 (permalink)  
Antiguo 04/08/2003, 20:13
Avatar de barba negra  
Fecha de Ingreso: mayo-2003
Ubicación: bogota
Mensajes: 91
Antigüedad: 14 años, 6 meses
Puntos: 0
selects

hola amigo ese proceso es muy sencillo.......
para este ejemplo debes crear una base de datos con dos tablas
pais y ciudad....
pais lleva los sig atributos :
id_pais
nombre
ciudad lleva los sig atributos:
id_ciudad
nombre
id_pais -------esta es el atributo que relaciona las dos tablas------
tenemos un select llamado pais y otro llamado ciudad......
el codigo de la pag principal es el siguiente.......

Código PHP:
<form name="form1" method="post" action="">
  <
table width="43%" border="1" cellspacing="0" cellpadding="0">
    <
tr
      <
td colspan="2"><div align="center">prueba de datos</div></td>
    </
tr>
    <
tr
      <
td width="14%">Pais:</td>
      <
td width="86%"><select name="pais" onchange"asignaciudad(this.value)";>
        </
select></td>
    </
tr>
    <
tr
      <
td>Ciudad:</td>
      <
td><select name="ciudad">
        </
select></td>
    </
tr>    
  </
table>
<
iframe name="calculoFrame" src="" height="0" width="0"></iframe>
<
script>asignapais();</script>
</form> 
las funciones script son las siguientes:

Código PHP:
<script>
function 
asignapais()
{
    
document.calculoFrame.location.href="asignapais.php";
}
function 
asignaciudad(valor)
{
if(
valor !=0)
       {
         
parent.calculoFrame.location.href="./Asignaciudad.php?id="valor;
       }
}

</script> 
el codigo de asignapais.php es el siguiente.......

Código PHP:
session_start();
error_reporting(0);
$link mysql_connect("localhost","","");
mysql_select_db("sitio1");
$query"select * from pais";
$resultmysql_query($query);
if(
mysql_num_rows($result)>0)
    {
    for(
$i=0;$i<mysql_num_rows($result);$i++)
       {
         
$row=mysql_fetch_object($result);         
               echo 
"<script>
                   var obj = new Option();
                   obj.value ='$row->id_pais';
                   obj.text = '$row->nombre';
                   parent.document.form1.pais.options[parent.document.form1.pais.options.length] = obj;
                 </script>"
;
       }  
  } 
y el codigo de asignaciudad.php

Código PHP:
session_start();
error_reporting(0);
$link mysql_connect("localhost","",""); 
mysql_select_db("sitio");
$query"select * from ciudad where id_ciudad='$id'";
$resultmysql_query($query); 
if(
mysql_num_rows($result)>0)
    {
    for(
$i=0;$i<mysql_num_rows($result);$i++)
       {
         
$row=mysql_fetch_object($result);         
               echo 
"<script>
                   var obj = new Option();
                   obj.value ='$row->id_ciudad';
                   obj.text = '$row->nombre';
                   parent.document.form1.ciudad.options[parent.document.form1.ciudad.options.length] = obj;
                 </script>"
;
       }  
     } 


ojala que te sirva


un saludo
__________________
quien se duerme se lo lleva la corriente.......

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 13:12.