PHP.SU

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


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

> Описание: Как открывать страницу в зависимости от айпишника?
Irina88
Отправлено: 16 Марта, 2018 - 10:45:22
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




Здравствуйте. Надо сделать так:
например, если на сайт заходит юзер с ip 49.146.1.1 то открывается страница page1.php , а если с другого айпишника - page2.php .
Кто подскажет, как это сделать?
 
 Top
andrewkard
Отправлено: 16 Марта, 2018 - 10:50:18
Post Id


Участник


Покинул форум
Сообщений всего: 1217
Дата рег-ции: Нояб. 2014  


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




Это не гарантировано, ввиду многих причин,
PHP:
скопировать код в буфер обмена
  1.  
  2. if(!empty($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] == '127.0.0.1'){
  3.     include_once('page_1.php');
  4. }
  5.  
  6. if(!empty($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] == '127.0.0.2'){
  7.     include_once('page_2.php');
  8. }
  9.  
 
 Top
Irina88
Отправлено: 16 Марта, 2018 - 11:07:41
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




спс. вечером попробую.
 
 Top
Irina88
Отправлено: 16 Марта, 2018 - 19:34:06
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




Получилось. А как добавить несколько ip (а также маски подсетей)?
 
 Top
andrewkard
Отправлено: 16 Марта, 2018 - 23:06:40
Post Id


Участник


Покинул форум
Сообщений всего: 1217
Дата рег-ции: Нояб. 2014  


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




Irina88 пишет:
А как добавить несколько ip

Разберетесь?
PHP:
скопировать код в буфер обмена
  1.  
  2. $os = array("Mac", "NT", "Irix", "Linux");
  3. if (in_array("Irix", $os)) {
  4.     echo "Нашел Irix";
  5. }
  6.  
 
 Top
Irina88
Отправлено: 17 Марта, 2018 - 10:43:45
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




А что такое 'Irix'?
 
 Top
Vladimir Kheifets
Отправлено: 17 Марта, 2018 - 10:52:35
Post Id



Посетитель


Покинул форум
Сообщений всего: 272
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


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




Irina88 пишет:
Здравствуйте. Надо сделать так:
например, если на сайт заходит юзер с ip 49.146.1.1 то открывается страница page1.php , а если с другого айпишника - page2.php .
Кто подскажет, как это сделать?

Добрый день, Ирина!
Вы можете попробовать проверить свой IP https://www[dot]whatismyip[dot]com/ip-whois-lookup/
Очень может быть, что на следующий день Вы получите другой результат, в том случае, если у Вас (или у Вашего клиента) динамический IP-адресс.
Думаю что, проверка по IP-адрессу не будет во всех случаях давать желаемый результат.
Если Вы хотите распознавать клиента, то советую Вам использовать куки.
Удачи!

(Отредактировано автором: 17 Марта, 2018 - 10:53:41)

 
 Top
Irina88
Отправлено: 17 Марта, 2018 - 11:07:56
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




Владимир, добрый день. Я ip узнаю на 2ip.ru . А что такое куки?
 
 Top
Vladimir Kheifets
Отправлено: 18 Марта, 2018 - 10:59:43
Post Id



Посетитель


Покинул форум
Сообщений всего: 272
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


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




Irina88 пишет:
Владимир, добрый день. Я ip узнаю на 2ip.ru . А что такое куки?

Ирина, добрый день!
Что такое куки Вы можете посмотреть здесь:
https://ru[dot]wikipedia[dot]org/wiki/Magic_cookie

Куки можно сохранить в браузере клиента на PHP или на JS.

Например, так можно на PHP сохранить значение переменной $user_id в браузере клиента для домена abc.com на 30 дней
PHP:
скопировать код в буфер обмена
  1. $user_id =1;
  2. $c_time = time() + 30*88000; // 30 days
  3. setcookie("user_id", $user_id, $c_time,"/","abc.com");

так можно получить значение user_id сохранённое в браузере


Удачи!

(Отредактировано автором: 18 Марта, 2018 - 14:27:45)

 
 Top
Irina88
Отправлено: 18 Марта, 2018 - 21:22:40
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




[quote=Vladimir Kheifets]
Irina88 пишет:


Например, так можно на PHP сохранить значение переменной $user_id в браузере клиента для домена abc.com на 30 дней
PHP:
скопировать код в буфер обмена
  1. $user_id =1;
  2. $c_time = time() + 30*88000; // 30 days
  3. setcookie("user_id", $user_id, $c_time,"/","abc.com");





А что означают цифры *88000*? Секунд что ли?

(Отредактировано автором: 18 Марта, 2018 - 21:25:12)

 
 Top
andrewkard
Отправлено: 19 Марта, 2018 - 10:18:29
Post Id


Участник


Покинул форум
Сообщений всего: 1217
Дата рег-ции: Нояб. 2014  


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




Да, это приблизительно равно 1 дню в секундах, если точнее то 86400
 
 Top
Irina88
Отправлено: 19 Марта, 2018 - 11:40:10
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




А что означают два амперсанда, идущих подряд (в php)?
 
 Top
andrewkard
Отправлено: 19 Марта, 2018 - 11:45:48
Post Id


Участник


Покинул форум
Сообщений всего: 1217
Дата рег-ции: Нояб. 2014  


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




 
 Top
Irina88
Отправлено: 19 Марта, 2018 - 19:07:49
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Март 2018  


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




А когда после переменной надо ставить ';' (точку с запятой), а когда не надо?
 
 Top
andrewkard
Отправлено: 20 Марта, 2018 - 10:12:39
Post Id


Участник


Покинул форум
Сообщений всего: 1217
Дата рег-ции: Нояб. 2014  


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




Цитата:

Как в C или Perl, PHP требует окончания инструкций точкой запятой в конце каждой инструкции.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB