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
Форумы портала PHP.SU :: Версия для печати :: ip SERVER
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » ip SERVER

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

1. Irina88 - 16 Марта, 2018 - 10:45:22 - перейти к сообщению
Здравствуйте. Надо сделать так:
например, если на сайт заходит юзер с ip 49.146.1.1 то открывается страница page1.php , а если с другого айпишника - page2.php .
Кто подскажет, как это сделать?
2. andrewkard - 16 Марта, 2018 - 10:50:18 - перейти к сообщению
Это не гарантировано, ввиду многих причин,
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.  
3. Irina88 - 16 Марта, 2018 - 11:07:41 - перейти к сообщению
спс. вечером попробую.
4. Irina88 - 16 Марта, 2018 - 19:34:06 - перейти к сообщению
Получилось. А как добавить несколько ip (а также маски подсетей)?
5. andrewkard - 16 Марта, 2018 - 23:06:40 - перейти к сообщению
Irina88 пишет:
А как добавить несколько ip

Разберетесь?
PHP:
скопировать код в буфер обмена
  1.  
  2. $os = array("Mac", "NT", "Irix", "Linux");
  3. if (in_array("Irix", $os)) {
  4.     echo "Нашел Irix";
  5. }
  6.  
6. Irina88 - 17 Марта, 2018 - 10:43:45 - перейти к сообщению
А что такое 'Irix'?
7. Vladimir Kheifets - 17 Марта, 2018 - 10:52:35 - перейти к сообщению
Irina88 пишет:
Здравствуйте. Надо сделать так:
например, если на сайт заходит юзер с ip 49.146.1.1 то открывается страница page1.php , а если с другого айпишника - page2.php .
Кто подскажет, как это сделать?

Добрый день, Ирина!
Вы можете попробовать проверить свой IP https://www[dot]whatismyip[dot]com/ip-whois-lookup/
Очень может быть, что на следующий день Вы получите другой результат, в том случае, если у Вас (или у Вашего клиента) динамический IP-адресс.
Думаю что, проверка по IP-адрессу не будет во всех случаях давать желаемый результат.
Если Вы хотите распознавать клиента, то советую Вам использовать куки.
Удачи!
8. Irina88 - 17 Марта, 2018 - 11:07:56 - перейти к сообщению
Владимир, добрый день. Я ip узнаю на 2ip.ru . А что такое куки?
9. Vladimir Kheifets - 18 Марта, 2018 - 10:59:43 - перейти к сообщению
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 сохранённое в браузере
PHP:
скопировать код в буфер обмена
  1. $user_id=$_COOKIE['user_id'];


Удачи!
10. Irina88 - 18 Марта, 2018 - 21:22:40 - перейти к сообщению
[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*? Секунд что ли?
11. andrewkard - 19 Марта, 2018 - 10:18:29 - перейти к сообщению
Да, это приблизительно равно 1 дню в секундах, если точнее то 86400
12. Irina88 - 19 Марта, 2018 - 11:40:10 - перейти к сообщению
А что означают два амперсанда, идущих подряд (в php)?
13. andrewkard - 19 Марта, 2018 - 11:45:48 - перейти к сообщению
Логическое И
http://php.net/manual/ru/languag...tors.logical.php
14. Irina88 - 19 Марта, 2018 - 19:07:49 - перейти к сообщению
А когда после переменной надо ставить ';' (точку с запятой), а когда не надо?
15. andrewkard - 20 Марта, 2018 - 10:12:39 - перейти к сообщению
Цитата:

Как в C или Perl, PHP требует окончания инструкций точкой запятой в конце каждой инструкции.

 

Powered by ExBB FM 1.0 RC1