Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите подключить определитель страны

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Extazy
Отправлено: 11 Января, 2015 - 10:01:05
Post Id


Посетитель


Покинул форум
Сообщений всего: 490
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Ув. гуру!
Помогите, пожалуйста, подключить на сайт определитель страны посетителя.

Исходный файл имеет такой формат:
(что означают первые 2 числа я без понятия)

CODE (htmlphp):
скопировать код в буфер обмена
  1. 39059456        39321599        2.84.0.0 - 2.87.255.255 GR      -
  2. 39321600        39583743        2.88.0.0 - 2.91.255.255 SA      -
  3. 39583744        39585791        2.92.0.0 - 2.92.7.255   RU      780


Его надо экспортировать в mysql базу и составить запрос, который будет определять страну.

1) В строке имеются несколько подряд идущих пробелов.. от них надо избавиться, но следующий код не помогает:
PHP:
скопировать код в буфер обмена
  1.     $a = "39583744      39585791        2.92.0.0 - 2.92.7.255   RU      780";
  2.     $pattern='/\s{2,}/';
  3.     $new_text=preg_replace($pattern, "", $a);
  4.     $pieces = explode(" ", $new_text);
  5.     print_r($pieces);
  6.  

Разбивает строку на:
CODE (htmlphp):
скопировать код в буфер обмена
  1. Array ( [0] => 39583744 39585791        2.92.0.0 [1] => - [2] => 2.92.7.255     RU      780 )


Помогите пока с первым шагом, пожалуйста.
НУ или кто готовым кодом поделитсяУлыбка
(Добавление)
В принципе исходная база легко заносится в excel базу, но с ней я не умею работать - не знаю как экспортировать в mysql. Растерялся
(Добавление)
2) Значения диапозона ip: 2.20.4.0 - 2.20.7.255
В mysql запросе так и писать WHERE ip > 2.20.4.0 AND ip < 2.20.7.255 ??
или надо преобразовать в какойто другой формат? Растерялся
(Добавление)
всё, нашёл рабочее решение http://ipgeobase[dot]ru/cgi-bin/Archive[dot]cgi

require_once("ipgeobase.php");
$gb = new IPGeoBase();
$data = $gb->getRecord($_SERVER['REMOTE_ADDR']);
$country = $data['cc'];
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB