Foros del Web » Programando para Internet » PHP »

Option Select "complejo"

Estas en el tema de Option Select "complejo" en el foro de PHP en Foros del Web. Hola a todos, recién empiezo en el mundo del PHP y los posts de este foro me han sido de mucha ayuda, gracias a todos! ...
  #1 (permalink)  
Antiguo 15/06/2010, 10:06
 
Fecha de Ingreso: octubre-2009
Ubicación: México, D.F.
Mensajes: 20
Antigüedad: 14 años, 6 meses
Puntos: 0
Option Select "complejo"

Hola a todos, recién empiezo en el mundo del PHP y los posts de este foro me han sido de mucha ayuda, gracias a todos!

Ahora bien, al estar desarrollando una aplicación me he encontrado con un bache, la cosa está así:
Tengo un formulario donde el usuario añade eventos y hay un select con los estados de la república mexicana, hasta ahí todo bien, pero el cliente me pide que al seleccionar el estado aparezca otro select con las ciudades de ese estado.
Algo así como cuando en algunos sitios seleccionas tu país y automáticamente te pone los estados de tu país para que selecciones en el que estás (lo he visto en google).
¿Hay alguna forma de hacer esto con PHP o es terreno de Javascript? La verdad estoy perdido
Espero que puedan ayudarme, gracias!
  #2 (permalink)  
Antiguo 15/06/2010, 10:17
 
Fecha de Ingreso: mayo-2010
Mensajes: 212
Antigüedad: 13 años, 10 meses
Puntos: 3
Respuesta: Option Select "complejo"

Se puede en PHP. Sin embargo, primero diria que hagas varias tablas, una por las calles que heredan el Id del Estado, otra por las ciudades que heredan el Id del estado y otra por si el cliente crece de paises. Con esas tablas haces un SELECT con el ID del Estado sin hacer un SELECT complejo, ademas presentaras una opcion de reuso cuando quieras asignar una direccion para la cuestion de empleados y clientes.

Segundo haces el query SELECT (Campos deseados) FROM (Tabla de Ciudades) WHERE campo = (Valor Id de Estado)

Se puede usar un subquery en (Valor Id de Estado) por si quieres automatizar.
  #3 (permalink)  
Antiguo 15/06/2010, 10:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Option Select "complejo"

en realidad es terreno de ambos: ajax

por favor, busca selects dependientes... ;)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 15/06/2010, 12:47
 
Fecha de Ingreso: octubre-2009
Ubicación: México, D.F.
Mensajes: 20
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Option Select "complejo"

Muchas gracias!, trabajaré en ello y les cuento cómo me fue.
  #5 (permalink)  
Antiguo 16/06/2010, 17:48
 
Fecha de Ingreso: octubre-2009
Ubicación: México, D.F.
Mensajes: 20
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Option Select "complejo"

Encontré este script que me ha sacado del apuro por el momento pero ya estoy buscando hacer una solución menos engorrosa.
Les dejo el código:

<script type="text/javascript">

var countrieslist=document.classic.eventLocation
var citieslist=document.classic.cities

var cities=new Array()
cities[0]=""
cities[1]=["Alvaro Obregón|Alvaro Obregón", "Azcapotzalco|Azcapotzalco", "Benito Juárez|Benito Juárez", "Coyoacán|Coyoacán", "Cuajimalpa|Cuajimalpa", "Cuauhtémoc|Cuauhtémoc", "Gustavo A. Madero|Gustavo A. Madero", "Iztacalco|Iztacalco", "Iztapalapa|Iztapalapa", "Magdalena Contreras|Magdalena Contreras", "Miguel Hidalgo|Miguel Hidalgo", "Milpa Alta|Milpa Alta", "Tláhuac|Tláhuac", "Tlalpan|Tlalpan", "Venustiano Carranza|Venustiano Carranza", "Xochimilco|Xochimilco" ]
cities[2]=["Aguascalientes|Aguascalientes"]
cities[3]=["Mexicalli|Mexicalli", "Tijuana|Tijuana", "Ensenada|Ensenada", "Rosarito|Rosarito", "Tecate|Tecate"]
cities[4]=["La Paz|La Paz"]

function updatecities(selectedcitygroup){
citieslist.options.length=0
if (selectedcitygroup>0){
for (i=0; i<cities[selectedcitygroup].length; i++)
citieslist.options[citieslist.options.length]=new Option(cities[selectedcitygroup][i].split("|")[0], cities[selectedcitygroup][i].split("|")[1])
}
}

</script>
  #6 (permalink)  
Antiguo 16/06/2010, 17:52
Avatar de xcars  
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 18 años, 11 meses
Puntos: 4
Respuesta: Option Select "complejo"

no necesariamente se tiene que hacer con ajax... lo que sucede es que la otra opcion es que por cada combo que seleccione el usuario tndras que refrescar la pagina y construir el nuevo combo, y asi sucesivamente.... con ajax si no eres muy experto te costara un poco, pero si lo logras, sera mas amigable la aplicacion
__________________
Con Microaplicaciones puedes hacer tu tienda en línea de forma sencilla y rápida, sin costos ocultos y con mucha responsabilidad.
  #7 (permalink)  
Antiguo 16/06/2010, 20:36
Avatar de De_la_Cuesta_13  
Fecha de Ingreso: abril-2009
Ubicación: Cali, Colombia.
Mensajes: 265
Antigüedad: 15 años
Puntos: 14
Respuesta: Option Select "complejo"

Cita:
no necesariamente se tiene que hacer con ajax... lo que sucede es que la otra opcion es que por cada combo que seleccione el usuario tndras que refrescar la pagina y construir el nuevo combo, y asi sucesivamente.... con ajax si no eres muy experto te costara un poco, pero si lo logras, sera mas amigable la aplicacion
Imagínate si existen más de opciones, serán tantas "refrescadas de página" que llega a ser una ofensa al usuario.

Link

No tienes que inventar código, simplemente adáptalo a lo que quieres. Ah, y por ahí derechos aprendes algo de Ajax.
__________________
Sólo quien nunca nada hace, nunca se equivoca.
  #8 (permalink)  
Antiguo 17/06/2010, 07:59
Avatar de xcars  
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 18 años, 11 meses
Puntos: 4
Respuesta: Option Select "complejo"

Cita:
Iniciado por De_la_Cuesta_13 Ver Mensaje
Imagínate si existen más de opciones, serán tantas "refrescadas de página" que llega a ser una ofensa al usuario.

Link

No tienes que inventar código, simplemente adáptalo a lo que quieres. Ah, y por ahí derechos aprendes algo de Ajax.
estoy de acuerdo, pero el amigo menciono que es NOVATO, que recien inicia en el mundo de PHP, tu como novato manejarias un auto de formula 1?
Claro que no, lo importante ahorita no es si la aplicacion sera amigable o no, lo primero es que conozca el concepto de como se anidan los combos para luego, cuando le toque hacerlo con ajax los conceptos no lo confundan...
__________________
Con Microaplicaciones puedes hacer tu tienda en línea de forma sencilla y rápida, sin costos ocultos y con mucha responsabilidad.

Etiquetas: option, select
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 18:25.