Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 不同国家、州、地理位置的动态下拉列表?_Php_Html_Mysql_Autocomplete_Gis - Fatal编程技术网

Php 不同国家、州、地理位置的动态下拉列表?

Php 不同国家、州、地理位置的动态下拉列表?,php,html,mysql,autocomplete,gis,Php,Html,Mysql,Autocomplete,Gis,我让我的用户进入他们的城市、州和国家。但我的难题是如何动态地管理它,以便在正确拼写和格式的同时控制输入的内容 例如,我目前对每个状态都有一个静态下拉列表 <select> <option name="state" value="AL">Alabama</option> <option name="state" value="AK">Alaska</option> <option name="state

我让我的用户进入他们的城市、州和国家。但我的难题是如何动态地管理它,以便在正确拼写和格式的同时控制输入的内容

例如,我目前对每个状态都有一个静态下拉列表

<select>
     <option name="state" value="AL">Alabama</option>
     <option name="state" value="AK">Alaska</option>
     <option name="state" value="AZ">Arizona</option>
     <option name="state" value="AR">Arkansas</option>
     <option name="state" value="CA">California</option>
     ....
 </select>

阿拉巴马州
阿拉斯加州
亚利桑那州
阿肯色州
加利福尼亚
....

这显然很好,但如果用户在美国境外,则根本无法扩展。在不同的国家和城市,它也有不足之处。我曾想过使用文本字段,然后将它们保存在一个单独的数据库中,并使用JQuery自动完成插件生成列表,但这似乎不是最好的方法。

好的,所以几个小时后,我编写了一个基于MySQL world数据库的应用程序:

整个应用程序的代码太大了,无法给出答案,因此我将为每个单独的文件提供Pastebin链接,以及指向脚本工作示例的链接和Zip存档的下载链接

我相信代码可以进一步改进,但我会让你自己决定

要求:MySQL世界数据库/jQuery

  • index.html:
  • style.css:
  • country.js:
  • dbconnect.php:
  • 获取_country.php:
  • 获取_states.php:
  • 获取_city.php:
  • 获取_data.php:
  • 工作示例:

  • Zip存档下载(不包括数据库!):

  • (目前下降)

  • 由于这个问题的流行需求,我正在编写一个更新的脚本。它很快就会被添加。

    好的,几个小时后,我已经基于MySQL world数据库编写了一个应用程序:

    整个应用程序的代码太大了,无法给出答案,因此我将为每个单独的文件提供Pastebin链接,以及指向脚本工作示例的链接和Zip存档的下载链接

    我相信代码可以进一步改进,但我会让你自己决定

    要求:MySQL世界数据库/jQuery

  • index.html:
  • style.css:
  • country.js:
  • dbconnect.php:
  • 获取_country.php:
  • 获取_states.php:
  • 获取_city.php:
  • 获取_data.php:
  • 工作示例:

  • Zip存档下载(不包括数据库!):

  • (目前下降)


  • 由于这个问题的流行需求,我正在编写一个更新的脚本。很快就会添加。

    您可以像这样管理它,首先选择国家,然后根据该国家id加载该特定国家的状态,然后在选择“状态”后,在一个下拉列表中填充该特定状态的城市down@baig772是的。但这需要我查找全世界的每个州和国家,并输入我的数据库。使用web服务会更容易,但如果可能的话,我真的希望避免这种情况。有一些数据库包含所有国家甚至城市的列表,例如:我要做的是使用所有国家的一些现有数据库等。然后使用Javascript(Ajax),这样如果用户键入第一个字母(例如a)此时会出现一个以a开头的所有国家/地区的下拉列表(从数据库中提取,这样您就不必写出来)。接下来,将显示一个“允许状态”字段,并执行与完成城市之前相同的操作。@icecub,好的,这与其他人所说的是一致的。这是一个可行的解决方案,如果我可以下载现有的数据库从互联网上与这些数据已经在它。我仍然很欣赏其他的选择。你可以像这样管理它,首先选择国家,然后根据该国家的id,加载该特定国家的州,然后在选择州后,一下子填充该特定州的城市down@baig772是的。但这需要我查找全世界的每个州和国家,并输入我的数据库。使用web服务会更容易,但如果可能的话,我真的希望避免这种情况。有一些数据库包含所有国家甚至城市的列表,例如:我要做的是使用所有国家的一些现有数据库等。然后使用Javascript(Ajax),这样如果用户键入第一个字母(例如a)此时会出现一个以a开头的所有国家/地区的下拉列表(从数据库中提取,这样您就不必写出来)。接下来,将显示一个“允许状态”字段,并执行与完成城市之前相同的操作。@icecub,好的,这与其他人所说的是一致的。这是一个可行的解决方案,如果我可以下载现有的数据库从互联网上与这些数据已经在它。我仍然很感激其他的选择。谢谢你在这方面花费的时间,这是一个很好的解决方案。我期待着亲眼看看你的剧本能做些什么。在这一点上,我的最佳选择似乎是为此实现一个数据库,我不想这样做,但可能没有选择。在接受这个答案之前,我会坚持几天,希望会有更多的想法。你能添加国家和州的数据库导出吗?@llioor你到底是什么意思?如果您希望导出国家/地区和州,则应使用db管理器(例如phpMyAdmin)进行导出。如果你的意思是别的,请详细解释。@llioor很抱歉,我真的不能帮你。我自己从来没有必要使用这样的数据库。我只是下载了一个基本的,并把它变成了一个工作脚本来回答这个问题。你可以通过谷歌找到很多数据库。大多数都要花钱,但也有一些是免费的。您只需要检查数据库中包含的信息类型,看看它是否符合您的需要。之后,您需要编写一个类似这样的模拟脚本。一旦你有了数据库,我不介意帮你解决这个问题。@EternalHour-如果你不想的话