Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Авторизация IP с маской. 
:(
    Опции темы
Dima85
Дата 2.1.2010, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



Есть такая конструкция:
Тоесть если IP из списка зашел на сайт появляется сообщение ОК.
Код

$config_range_ip = "61.105.202.109,81.254.61.18"; // 
$ip_user = $_SERVER['REMOTE_ADDR'];

if (in_array($ip_user,explode(",",$config_range_ip))) {
    $message = "ОК";}
}


Помогите немного усовершенствовать его. Тоесть если в списке есть *
Пример:
Код

$config_range_ip = "61.105.202.*,81.254.61.18"; // 


Значит надпись "ОК" должна появляться при входе любых IP начинающихся с 61.105.202.
PM MAIL   Вверх
bars80080
Дата 2.1.2010, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Код

    function compareip($ip, $ar) {
        $ex = explode('.', $ip.'');
        foreach($ar as $aq) {
            $ap = explode('.', $aq.'');
            $fg = true;
            for($i = 0; $i < 4; $i++) { if($ap[$i] != '*' && $ap[$i] != $ex[$i]) { $fg = false; break; }}
            if($fg) { return true; }
        }
        return false;
    }

$ip = getenv('REMOTE_ADDR');
$allowIP = array('61.105.202.*','81.254.61.18');

compareip($ip, $allowIP)

PM MAIL WWW   Вверх
Dima85
Дата 2.1.2010, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



Как-то все сложно. А проще конструкций не существует?  smile 
PM MAIL   Вверх
Ипатьев
Дата 2.1.2010, 16:21 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Чтобы писать конструкции попроще, надо очень много знать.
Такие люди почти не ходят на форум.

К примеру, некоторые знают, что IP адрес - это, на самом деле, число...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0824 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.