Maison  >  Article  >  développement back-end  >  根据新浪IP数据库,判断城市

根据新浪IP数据库,判断城市

WBOY
WBOYoriginal
2016-06-23 13:32:331499parcourir

PHP根据新浪IP数据库,判断出访客城市,匹配数据库字段中设置的城市
比如判断出访客城市为北京市,匹配数据库  如果当前访客城市=ID为1 的city字段 输出  结果 a  如果不等于 输出结果ab 
数据库如下图
----------------------------------------------------
id              city                                   info

1        北京市 上海市 深圳等        1 线城市
2        南京,武汉等                       2 线城市
----------------------------------------------------------

需要怎么样 写,还有我这样设置表1线城市 2线城市分类合理吗。
我是想屏蔽指定区域,后台设置1线城市或者2线城市,根据用户城市匹配数据库,输出不一样的结果。
 求具体的PHP代码 感谢。。。。


回复讨论(解决方案)

这样?

$query = mysql_query("select id from table where city like '%北京市%'") or die(mysql_error());$thread = mysql_fetch_assoc($query);$id = isset($thread['id'])? $thread['id'] : 0;if($id>0){ // 表示找到匹配    echo 'a';}else{    echo 'ab';}

这样?

$query = mysql_query("select id from table where city like '%北京市%'") or die(mysql_error());$thread = mysql_fetch_assoc($query);$id = isset($thread['id'])? $thread['id'] : 0;if($id>0){ // 表示找到匹配    echo 'a';}else{    echo 'ab';}




表a
------------------------
id  name   open
1    张三   0
2    李四   1
-------------- -----
想设置一个IP城市屏蔽表,比如设置表A ID为1 屏蔽区域为1线城市,或者2线,或者指定城市
那么表B (IP城市屏蔽表) 要如何设计

那个open 字段是做什么的。
表a
------------------------
id  name   open
1    张三   0
2    李四   1
-------------- -----

表city设计如下
id              city                                   info     group

1        北京市                       1 线城市             1
2        上海市                       1 线城市              1
3         深圳                           1 线城市             1
4        南京                       2 线城市                  2
5        武汉                       2 线城市                  2
----------------------------------------------------------

ip城市屏蔽表
id, uid, city_id city_group
1     1        0              1
2     2        0              1
3     1        0              2
4     1        12            0

uid是表a的id, city_id是city表id,city_group表示几线城
ip城市屏蔽表记录的意思就是,张三屏蔽一线和二线城市和city_id=12的城市,李四屏蔽一线城市。

查询张三屏蔽的城市。
select * from ip where uid=1; 找出group和city_id集合

然后select * from city where group not in($group) and city_id not in($city_id);

第一点..你要有每个IP对应的省份城市的数据...然后根据获取到的IP找的对应的城市...进行转跳对应城市的URL...不过一般都用脚本去检测...不会在程序里面检测..

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn