Comunidad de diseño web y desarrollo en internet online

Cargar combo de ciudades apartir de pais (Mysql+php)

Citar            
MensajeEscrito el 02 Jul 2008 02:22 pm
Buenas, soy nuevo en flash y tengo una dudita, tengo dos combos, uno en el que cargo los paises del mundo que estan cargados en la base de datos de mysql y otro donde se supone se debe cargar las ciudades del pais

este es el php de los paises

Código :


<?

$enlace = mysql_connect ("127.0.0.1", "root","12345");
mysql_select_db("prueba");
   $consulta_usuario = mysql_query ("SELECT nombre_pais FROM pais");
   
        
    $i=0;
    $cade="";
     while($rows=mysql_fetch_array($consulta_usuario)){
      $cade.="&nomb".$i."=".$rows["nombre_pais"];
     
     $i++;
      }
      echo "&cade=$cade"; 
        
?>



y este el AC

Código :

combo_m.visible=true;
combo_m.addItem("Selecciona Pais",0);
var Datos:LoadVars = new LoadVars();
Datos.idtutor=id_tuto.text;
Datos.sendAndLoad("combo_grupo.php",Datos,"post");
Datos.onLoad = function (success:Boolean){ 

for(j=0;this["nomb"+j]!=undefined;j++){  
trace (this["nomb"+j])
combo_m.addItem (this["nomb"+j]); 
}
}


selectMenu = new Object();//-----------------------------------
//Funcion para activar el ComboBox
selectMenu = new Object();
//Creamos la funcion selectMenu, que es nuestra apliacion principal
//para el combobox. Declaramos esta funcion como un nuevo objeto.
selectMenu.change = function(evento) {
/* selectMenu al ser un objeto, podemos agregarle cualquier propiedad
valor u opcion, en este caso otra funcion, la cual nombraremos "evento" */
trace("Seleccionado "+evento.target.value);
error_txt.text = combo_m.text;
//este trace es opcional, lo agregue para ver la salida del objeto
//seleccionado

};
combo_m.addEventListener("change", selectMenu);
//aplicamos la funcion creada a mi box y listo!!
this.carga._visible=false;



ahora este es el php que me muestra las ciuades de acuerdo al id_pais

Código :

<?

$pais = $_POST["pais"];
//$pais='colombia';
mysql_connect ("localhost", "root","12345");
mysql_select_db("prueba");
   
   $consulta=mysql_query("SELECT id_pais FROM pais WHERE nombre_pais LIKE '$pais'");
   $row=mysql_fetch_array($consulta);
   $res=$row["id_pais"];
   $res;
   
   $consulta_usuario = mysql_query ("SELECT nombre_ciudad FROM ciudad WHERE id_pais LIKE '$res'");
        
    $i=0;
   $cade="";
    while($rows=mysql_fetch_array($consulta_usuario)){
     $cade.="&ciud".$i."=".$rows["nombre_ciudad"];
     
     $i++;
    }
   echo "&cade=$cade"; 
     
      
?>




Mi problema es que selecciono el pais en el combo del pais, pero no carga las ciudades en el combo de las ciudades en flash, como puedo hacer para que cuando seleccione el pais, de alguna manera se actualice el combo de las ciudades???

Por x4v1er

17 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 02 Jul 2008 04:47 pm
No estás pasando el id de país (necesario para la segunda consulta), solo el nombre. Agrega el id en el PHP

SELECT id_pais, nombre_pais FROM pais

Luego modificas la salida:

$cade.="&nomb".$i."=".$rows["nombre_pais"]."&id$i=".$rows['id_pais']."&";

Luego lo cargas en el combo

Código :

for(j=0;this["nomb"+j]!=undefined;j++){  
    combo_m.addItem ({label:this["nomb"+j], data:this["id"+i]); 
}

Luego lo pasas en el onChange

Código :

selectMenu.change = function(evento) {
  id = evento.target.selectedItem.data
  trace("Capturado "+id)
};


Luego hay que agregar una función que reciba como parámetro ese id, use un Loadvars para cargar las ciudades y rellene el combo (es decir el proceso del anterior pero para el nuevo combo) Intenta cargar los id, mira si el trace saca el id correcto, luego continuamos

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 02 Jul 2008 08:24 pm
Ya lo solucione, despues del listener del combo de los paises envio a php el contenido de la seleccion que realizo el usuario, y pues envio ese parametro a php para que consulte las provincias, y esos resultados los cargo de igual manera que en el primer combo pero obviamente al segundo combo, es muy parecido a lo que me aconsejaste solisarg.

Gracias por la ayuda

Por x4v1er

17 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 04 Jun 2009 04:56 pm
:cool: amigos holas soy nuevo en esto de action script con php no se si me podrina proporcionar su codigo amigo yo tengo un problema similar y quisiera saber si me pueden ayudar compartiendome su codigo se los agradeceria grandemente
gracias de antemano y saludos :cool:

Por yozhua

1 de clabLevel



 

msie8
Citar            
MensajeEscrito el 04 Jun 2009 06:56 pm
Puedes preguntar lo que necesitas en un POST nuevo

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 04 Jun 2009 07:23 pm
YA LO HIZE AMIGO PERO NO ME RESPONDE U CUANDO VI ESTE POST ERA LO QUE BUSCABA PÉRO SU CODIGO ESTA UN POCO CONFUSO ESPERO SU AYUDA YA QUE PARA UNA WEB DONDE TRABAJO SE LO AGRADECIRIA MUCHO

GRACIAS Y :cool: SALUDOS

Por yozhua

1 de clabLevel



 

msie8

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.