Autor | Zpráva | ||
---|---|---|---|
Marek_k Profil * |
#1 · Zasláno: 4. 8. 2008, 13:08:12
Ahoj, časem to budu potřebovat, nevíte jakým způsobem získávají název země z IP a host adresy např.:
http://www.ippages.com/?ip=78.102.58.69 Lookup Country: CZ-Czech Republic flag Lookup Country Code3: CZE Jde mi o určení země z IP (nebo hostname), vystačí si třeba jen s koncovkou u hostu např. http://www.r9bg69.net.upc.cz nebo to má jiný pravidla? (Pomíjíme to, že klient používá Tory a jiné anonymizéry) |
||
pmg Profil |
#2 · Zasláno: 4. 8. 2008, 13:40:39 · Upravil/a: pmg
V PHP existují funkce GeoIP, ale zkušenosti s tím nemám.
|
||
Marek_k Profil * |
#3 · Zasláno: 4. 8. 2008, 13:47:59
Díky, to je přesně to co jsem potřeboval, funkce geoip_country_code_by_name vyplivne dvoupísmenný kód, kterej pak porovnám se seznamem zemí podle ISO 3366-1
viz. http://encyklopedie.seznam.cz/heslo/131739-iso-3166-1 Ten seznam zemí mám i v sql dumpu, kdyby měl někdo zájem, postnu to někam. |
||
Marek_k Profil * |
#4 · Zasláno: 4. 8. 2008, 13:53:44
Safra, ta funkce je extension a já na server nemůžu instalovat, budu to muset vymyslet jinak.
|
||
pmg Profil |
#5 · Zasláno: 4. 8. 2008, 14:52:19
Prohlížeče posílají hlavičku Accept-Language; nevím, pro jaký účel to potřebuješ, ale mohlo by to stačit. Pracuje se s tím asi takto:
$languages = explode(";", preg_replace("/q=\d?(?:\.\d+)?/", "", $_SERVER["HTTP_ACCEPT_LANGUAGE"])); |
||
Mike8748 Profil |
#6 · Zasláno: 4. 8. 2008, 15:38:56
Marek_k
http://www.maxmind.com/app/geolitecountry free databaze ip rozsahu podle jednotlivejch zemi. zpracovat ji PHPckem zas tak slozity neni ( a zadny extension nepotrebujes) http hlavicka Accept-language je obcas velice zcestna, protoze takovejch 90% uzivatelu ma jako prvni hodnotu anglictinu |
||
pmg Profil |
#7 · Zasláno: 4. 8. 2008, 16:03:40
Mike8748
Pěkné! Jen bych před použitím doporučil převést tabulku do MyISAM a přidat indexy, které CSV nepodporuje. Vyhledávání bude rychlejší. |
||
Marek_k Profil * |
#8 · Zasláno: 4. 8. 2008, 16:18:02
Díky chlapi. :-)
|
||
Časová prodleva: 16 let
|
0