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<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$dato = $_POST['localizacion'];
if($ST[1]){
$extReg = " AND estados.nombre LIKE '%".$ST[1]."%'";
}
if($ST[2]){
$extPai = " AND paises.nombre LIKE '%".$ST[2]."%'";
}
$SQL = "
SELECT localidades.nombre as ciudad, estados.nombre as region, paises.nombre as pais FROM localidades
INNER JOIN estados ON localidades.id_estado = estados.id
INNER JOIN paises ON localidades.id_pais = paises.id
WHERE localidades.nombre LIKE '%".$ST[0]."%'".$extReg."".$extPai."
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.