Register Now

Login

Lost Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.


Add post

Add question

You must login to ask a question.

Login

Register Now

Цель сайта совместная помощь друг другу, если вы желаете скачивать ресурсы и ничего при этом не делать, вам нужно оплатить Подписку Другой вариант активно помогать другим участникам

Определение города по IP (Geo IP) для России, Украины и Белоруссии 5

Определение города по IP (Geo IP) для России, Украины и Белоруссии 5

Описание

Автоматическое определение региона пользователя по IP-адресу. Регион определяется один раз и запоминается в сессию и cookie, но пользователь может его менять.

Регион пользователя подставляется при регистрации и оформлении заказа, избавляя пользователя от необходимость заполнять поля Регион, Город, Индекс.

Автоматически меняется валюта при определении / смене страны.

Есть возможность выводить информацию в зависимости от местоположения посетителя (см. скриншоты)

Можно настроить редиректы в зависимости от положения, например, на ua.site.com для Украины или spb.site.com для Санкт-Петербурга

Содержит наиболее полную базу населенных пунктов России (ФИАС), Украины и Белоруссии.
Определение по IP работает для России, Украины и Белоруссии с точностью до города для других стран с точностью до страны

Работа с поддоменами
Если вы используете поддомены, установите для них одну сессию, для этого в .htaccess добавьте:
php_value session.cookie_domain .site.com
где site.com — ваш сайт

В настройках модуля на вкладке «Редиректы» пропишите основной домен (для редиректа по-умолчанию).

Требования к хостингу

  • PHP 5.3+
  • ionCube PHP Loader версии не ниже 4.4
  • Установленный в opencart Vqmod

Совместимость с версиями: Opencart: 1.5.1 — 1.5.6, ocStore: 1.5.1 — 1.5.5

[button size=»small» color=»blue» style=»none» new_window=»true» link=»http://sh.st/vgXzt»]Демо[/su_button]          [button size=»small» color=»green» style=»none» new_window=»true» link=»http://sh.st/vgCAz»]Админка (demo: demo)[/su_button]
.html (2.0 KiB)

About Grek

Хорошее начало — не мелочь, хотя и начинается с мелочи По вопросам подписки / рекламе, пишите в личку https://t.me/trafimmamedov или на почту [email protected]

Follow Me

Comments ( 10 )

  1. а где сам дистрибутив?

  2. Нажми на ссылку и будет тебе счастье

  3. Не работает. При выборе города все равно тычет москву, которая по умолчанию

  4. Ошибочка, работает, просто не ломаный он. need license cod

  5. Всё работает отлично! Вы не правильно, что-то настраиваете. И вообще, модуль бесполезный. Бесполезное определение городов. Если было бы возможно балансировать цену по регионам, вот тогда действительно вещь

    • Начет балансировки цен, имхо это уже к мультимагазину или еще куда, модуль в приципе со своей задачей справляется, что обещано — делает) Многим полезны геосообщения, смена номеров, редиректы, довольно удобно.
      А расширять функционал до управления цен и прочего, тут уже и название модуля и его направление менять нужно будет) Как собственно и стоимость)

  6. Поставил на опенкарт 1.5.6.4 , правда до этого там стоял этот модуль верси 4.2, я удалил все таблицы его касающиеся и все файлы, поставил эту версию, почистил все кэши, куки.
    Модуль отображается, появляется попап с «угадали» и после этого тычет без конца москву, что бы я не выбирал.

    • И ставил щас на абсолютно чистый Ocstore последней версии — результат тот же

    • а насчет лицензии подумал так, потому что файл в папке system зашифрован

  7. расшифрованный файл \system\library\geoip.php
    http://zalil.su/675719
    з.ы. только я мало что в нем понимаю, чтобы отключить проверку лицензии.

  8. function getUID() {
    $dirname = realpath( dirname( __FILE__ ) );
    return rtrim( base64_encode( md5( $dirname . $uid_salt ) ), ‘=’ ) . rtrim( base64_encode( md5( $dirname ) ), ‘=’ );
    }
    function checkLicense($license) {
    return substr( base64_encode( md5( self::getUID( ) . $uid_salt ) ), 5, 10 ) . rtrim( base64_encode( md5( $license_salt . ( 311 * 553 + 3829 ) . self::getLicenseHost( ) . $license_salt ) ), ‘=’ ) == $license;
    }

  9. function getLicenseHost() {
    if (is_null( $license_host )) {
    $host = »;
    if (function_exists( ‘apache_request_headers’ )) {
    foreach (apache_request_headers( ) as $key => $value) {
    strtolower;
    $key;
    }
    }
    }
    if (( ) == ‘host’) {
    $host = $license_host;
    break;
    if (( !$host && isset( $_SERVER[‘HTTP_HOST’] ) )) {
    $host = $_SERVER[‘HTTP_HOST’];
    self;
    implode;
    ‘.’;
    array_slice;
    explode( ‘.’, $host );
    -2;
    }
    ( ( ) );
    $license_host = ;
    return $license_host;
    }
    }

  10. Здесь представлен механизм формирования и проверки ключа. Прошу помощи знающих PHP, как что поправить чтобы его обойти.

Leave a reply