Foros del Web » Programando para Internet » PHP »

menu desplegable que active otro menu desplegable

Estas en el tema de menu desplegable que active otro menu desplegable en el foro de PHP en Foros del Web. Hola a todos, y gracias por anticipado por las ayudas. Necesito hacer tres menus desplegables, el primero que me permita seleccionar un "departamentos", una vez ...
  #1 (permalink)  
Antiguo 18/04/2005, 01:08
 
Fecha de Ingreso: diciembre-2004
Mensajes: 207
Antigüedad: 13 años
Puntos: 0
menu desplegable que active otro menu desplegable

Hola a todos, y gracias por anticipado por las ayudas.
Necesito hacer tres menus desplegables, el primero que me permita seleccionar un "departamentos", una vez seleccionada el departamento se active un segundo menu que me muestre las "provincias" del departamento seleccionado, y luego al seleccionar la provivncia, se active un tercer menu que me permita seleecionar el "distrito", como en este ejemplo:

http://www.inei.gob.pe/mapas/bid/frames.asp

Claro, lo quiero hacer desde php y con MySQL.
Cual sería el criterio para almacenar estos datos en MySQL.

Donde encuentro algun manual o código de ejemplo.
Ayuda por favor.
Gracias.
  #2 (permalink)  
Antiguo 18/04/2005, 03:23
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 15 años, 9 meses
Puntos: 771
Hola edcala

Tienes un ejemplo en las FAQs de este mismo foro:

http://www.forosdelweb.com/showthrea...999#post664999

Saludos,
  #3 (permalink)  
Antiguo 18/04/2005, 03:31
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Acá puse las diferentes formas que puedes hacerlo: http://www.forosdelweb.com/f18/trabajar-con-dos-listas-desplegables-que-guardan-relacion-211046/

Ahora veo que me faltó la opción de manejar frames/iframes que supongo es lo que hace el link que dejaste (no me funcionan sus combobox)... aunque básicamente eso lo hace JSRS... pero en tu link deben trabajar con una sentencia onChange (JS) que abre otra página en un frame diferente pasando una variable por la URL...

Y por si te decides usar puro JavaScript.. te dejo un link de un combobox triple: http://www.forosdelweb.com/f13/combobox-anidado-174199/

Para inclinarte por una u otra opción debes tomar en cuanta los datos que manejarás. Si son pocos sería conveniente usar JS por ejemplo... Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 18/04/2005 a las 03:54
  #4 (permalink)  
Antiguo 27/04/2005, 00:35
 
Fecha de Ingreso: febrero-2004
Ubicación: España. Madrid
Mensajes: 454
Antigüedad: 13 años, 9 meses
Puntos: 0
he visto que el ejemplo de http://www.ashleyit.com/rs/jsrs/select/php/select.php
usa algo llamado selectbox
he buscado en manuales de php pero no viene, que es?
  #5 (permalink)  
Antiguo 27/04/2005, 08:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
cyborg
usa algo llamado selectbox
he buscado en manuales de php pero no viene, que es?
En manuales de PHP no lo vas a encontrar .. eso es de HTML .. <select> .. o combo .. o lista desplegable o como quieras llamarlo ..

Y .. lo que más usa el ejemplo que citas son las técnicas de "Remote Scripting" de lo que trata el sitio que mencionas. QUe en ese caso se basan en frames ocultos y mucho javacript ...

Un saludo,
  #6 (permalink)  
Antiguo 27/04/2005, 08:56
 
Fecha de Ingreso: diciembre-2004
Mensajes: 128
Antigüedad: 13 años
Puntos: 0
En PHP no se puede, ya que se ejecuta en el servidor y llega "estatico" al cliente. Hay un post por este foro sobre Ajax que si mal no entendi, sirve para hacer eso.
Tendrias que hacer la consulta en el foro Javascript, que seguro te lo van a responder.
  #7 (permalink)  
Antiguo 27/04/2005, 09:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Bueno . .no es que no se pueda hacer en PHP (casí sólo .. ) sino que el efecto es ese mismo, se ha de recargar la página completamente y tratar las variables como tal para que no se "pierdan" sus valores .. Ejemplo el de la FAQ que ya han mencionado:

http://www.forosdelweb.com/showthrea...999#post664999

Pero .. por supuesto la técnica de "Ajax" es espectacular para resolver el problema .. y a "malas" si no hay mucho dato que trabaje estos elementos relacionados .. podría generarse el Javascript y que el "cliente" se trabaje su parte al recibir todos los datos. Tambien es buena opción RSS (Remote Scripting clásico) .. pero puestos a eso ... mejor irse por el lado de "Ajax" (xmlHttpRequest rebautizado).

Un saludo,
  #8 (permalink)  
Antiguo 27/04/2005, 11:26
 
Fecha de Ingreso: febrero-2004
Ubicación: España. Madrid
Mensajes: 454
Antigüedad: 13 años, 9 meses
Puntos: 0
Cita:
Iniciado por Cluster
En manuales de PHP no lo vas a encontrar .. eso es de HTML .. <select> .. o combo .. o lista desplegable o como quieras llamarlo ..

Y .. lo que más usa el ejemplo que citas son las técnicas de "Remote Scripting" de lo que trata el sitio que mencionas. QUe en ese caso se basan en frames ocultos y mucho javacript ...

Un saludo,
cierto cierto
pero aparte cometi un gran fallo....... no me di cuenta el que el selectbox es una funciona que define el, y finalmente lo que hace es efectivamente en esa funciona con un bucle crear en html el select option dinamico

por cierto.... acostumbrado como estoy por desgracia a programar solo en visual basic, claro esta para entornos no de internet..... que es lo equivalente a los eventos de los controles?

es decir si tengo 2 select option, donde se captura el valor elegido en uno de los select para disparar el otro?

he mirado varios de los links pero no consigo encontrar la analogia :(

saludos

Última edición por cyborg; 27/04/2005 a las 11:34
  #9 (permalink)  
Antiguo 27/04/2005, 13:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
por cierto.... acostumbrado como estoy por desgracia a programar solo en visual basic, claro esta para entornos no de internet..... que es lo equivalente a los eventos de los controles?
Javascript .. eventos "onXXXX()" y familia ..

Cita:
es decir si tengo 2 select option, donde se captura el valor elegido en uno de los select para disparar el otro?
Hablando con el mínimo uso de javacript .. igualmente hay que capturar bajo un evento tipo "onChange()" (de tu <select>) el valor que tenga la opción seleccionada para hacer alguna acción como por ejemplo un "submit" de tu formulario (también vía javacript) o bien "montar" un URL para redireccionar hacia tu script PHP que corre del "lado del servidor" .. En el ejemplo de la FAQ que dejé se usa ese "poco" de javacript para la primera opción (hacer un submit) .. revisalo y pruebalo .. tienes datos de ejemplo .. etc para que lo invetigues.

Algo más "limpio" sin recarga de página y lo más "parecido" a una aplicación de "escritorio" sería el uso de las técnicas de "Ajax" (usa google y el buscador del foro .. se ha hablado del tema recientemente para que veas sus ejemplos .. te sorprenderas y alegraras a su vez de lo que se puede llegar hacer en este ambiente donde nuestro "cliente" es un navegador común).

Un saludo,
  #10 (permalink)  
Antiguo 27/04/2005, 14:20
 
Fecha de Ingreso: febrero-2004
Ubicación: España. Madrid
Mensajes: 454
Antigüedad: 13 años, 9 meses
Puntos: 0
Cita:
Iniciado por Cluster
Javascript .. eventos "onXXXX()" y familia ..



Hablando con el mínimo uso de javacript .. igualmente hay que capturar bajo un evento tipo "onChange()" (de tu <select>) el valor que tenga la opción seleccionada para hacer alguna acción como por ejemplo un "submit" de tu formulario (también vía javacript) o bien "montar" un URL para redireccionar hacia tu script PHP que corre del "lado del servidor" .. En el ejemplo de la FAQ que dejé se usa ese "poco" de javacript para la primera opción (hacer un submit) .. revisalo y pruebalo .. tienes datos de ejemplo .. etc para que lo invetigues.

Algo más "limpio" sin recarga de página y lo más "parecido" a una aplicación de "escritorio" sería el uso de las técnicas de "Ajax" (usa google y el buscador del foro .. se ha hablado del tema recientemente para que veas sus ejemplos .. te sorprenderas y alegraras a su vez de lo que se puede llegar hacer en este ambiente donde nuestro "cliente" es un navegador común).

Un saludo,

gracias, sin entrar al Ajax, que con lo poco que se, seria perderme mas.... parece que con php y html a secas no se puede hacer eso que comentaba no? hay que recurrir al javascript

bueno...... otra jodienda :p

gracias
saludos
  #11 (permalink)  
Antiguo 27/04/2005, 16:27
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
gracias, sin entrar al Ajax, que con lo poco que se, seria perderme mas.... parece que con php y html a secas no se puede hacer eso que comentaba no? hay que recurrir al javascript

bueno...... otra jodienda :p
Bueno .. te guste o no . .programar en este ambiente "cliente-servidor" para la "web" implica que -debes- conocer lenguajes del lado del servidor como lo es PHP y -también- del lado del cliente como es HTML que ya lo usas, Javascript .. y hasta Applet Java, ActiveX por citar otras cosas que tal vez nunca uses pero es recomendable que "existen".

Nunca debes "centrarte" en resolver el problema -solo con PHP-; evalua en que te podría ayudar "javascript" por ejemplo .. DHTML, técnicas como la de "Ajax" .. etc. Así generaras mejores "interfaces" para tus aplicaciones basadas en este entorno. Cuanto más sepas de estas con lo que ya sepas de PHP .. veras que te irá mejor. Mejor para afrontar un problema y saber por donde "buscar" información (y/o preguntar= foro temático adecuado).

Un saludo,
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 12:39.