Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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/mysql将状态附加到城市_Php_Mysql - Fatal编程技术网

php/mysql将状态附加到城市

php/mysql将状态附加到城市,php,mysql,Php,Mysql,很难想出最好的方法来做这件事 我有一个搜索功能,需要“搜索词”和“搜索位置”。在位置输入中,我有一个建议功能,显示“城市,州缩写”,但似乎有些用户不使用它(或不能),所以他们只输入一个城市名称。。。我需要在提交表格后附加州缩写。我有一张表格,上面有美国所有的城市和州的名字,但问题是。。。在不同的州有多个同名城市。。。我想添加该城市最受欢迎的州的州缩写(这有意义吗?) 例如,如果用户输入“Miami”,我希望它变成“Miami,FL”,而不是“Miami,WV” 有什么想法吗 谢谢 我想添加该城市

很难想出最好的方法来做这件事

我有一个搜索功能,需要“搜索词”和“搜索位置”。在位置输入中,我有一个建议功能,显示“城市,州缩写”,但似乎有些用户不使用它(或不能),所以他们只输入一个城市名称。。。我需要在提交表格后附加州缩写。我有一张表格,上面有美国所有的城市和州的名字,但问题是。。。在不同的州有多个同名城市。。。我想添加该城市最受欢迎的州的州缩写(这有意义吗?)

例如,如果用户输入“Miami”,我希望它变成“Miami,FL”,而不是“Miami,WV”

有什么想法吗

谢谢

我想添加该城市最受欢迎的州的州缩写(这有意义吗?)

没有。这绝对没有道理。如果有人是迈阿密人呢


我认为您必须强制用户选择一个州,或者输入一个邮政编码,以帮助您稍后了解该州。这难道没有道理吗?如果没有邮政编码,地址不是一文不值吗

您可能需要在城市和州名称表中显示权重值,然后对城市/州名称表运行查询,以选择具有匹配城市名称和最高权重值的行,并返回州名称


然而,更好的选择可能是运行一个查询,获取所有可能的状态,然后询问用户哪一个是正确的——最好是在用户继续使用表单之前使用AJAX提示他们;但是,即使只是一个后续页面也可以工作。在这种情况下,尝试自动填写状态可能会给那些不太受欢迎的城市版本的用户带来混乱。

< P>你可能要考虑“城市人口”与“一般流行”之间的相关性。 因此,一个简单的选择可能是收集每个城市的人口,将其存储在数据库中,如果使用了需要消除歧义的城市名称,则可以选择人口最多的城市

以下Wikipedia文章中的参考可能有用:


谷歌地图以类似的方式解决歧义消除问题,尽管权重可能不同:


我过去认为谷歌地图在解决此类问题时也会考虑当前视口,但在缩放到西弗吉尼亚州的同时搜索迈阿密仍然会将您带到佛罗里达州。

在城市表中为您的每个城市指定人气权重,并在执行select语句时按人气权重排序


或者,允许用户在输入城市后选择他们的意思。。。哪一个绝对是最好的主意…

同上:)你先到那里;)好。。。我在想我可以为不那么“受欢迎”的州加上一个“你的意思是什么?”。此外,大部分数据都基于大城市。有很多网站也能做到这一点。…@Mike起初我对你的理解不同,我以为你想在用户进入后根据城市的人气来确定确切的城市。