Ver Mensaje Individual
  #5 (permalink)  
Antiguo 18/09/2016, 02:14
Avatar de manuparquegiralda
manuparquegiralda
 
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 11 años, 10 meses
Puntos: 39
Respuesta: autocompletar con PHP ciudad/estado/pais

Realmente, si tienes las bases de datos es muy sencillo, pero para poder sugerirte una consulta mysql necesitamos que des más datos.

Así a priorí se me ocurre una idea, si tienes un input TEXT en el que indicas que se meta el valor en este formato: CIUDAD, ESTADO, PAIS

Código HTML:
Ver original
  1. <input type="text" name="localizacion" placeholder="Ej: (Miami, Florida, Estados Unidos)" />

Después recibes esto en PHP, obviamente utilizando AJAX y suponiendo que tienes tres tablas, una de paises, otra de estados y otra de localidades relacionadas entre sí.

Código PHP:
Ver original
  1. $dato = $_POST['localizacion'];
  2. $dato = str_replace(", ", ",",$dato);
  3. $ST = explode(",",$dato);
  4.  
  5. if($ST[1]){
  6.     $extReg = " AND estados.nombre LIKE '%".$ST[1]."%'";
  7. }
  8. if($ST[2]){
  9.     $extPai = " AND paises.nombre LIKE '%".$ST[2]."%'";
  10. }
  11.  
  12. $SQL = "
  13. SELECT localidades.nombre as ciudad, estados.nombre as region, paises.nombre as pais FROM localidades
  14.     INNER JOIN estados ON localidades.id_estado = estados.id
  15.         INNER JOIN paises ON localidades.id_pais = paises.id
  16.             WHERE localidades.nombre LIKE '%".$ST[0]."%'".$extReg."".$extPai."
  17.                 LIMIT 10";

Entonces recibes del input los datos, donde antes de la primera coma tienes la localidad, despúes de esta el estado y después de la segunda coma tienes el país y en función de que recibas más datos vas ampliando la consulta, no sé si me explico. Pero es jugando un poco a ciegas ya que no sé como son tus tablas.
__________________
Diseño Web - Arisman Web