@cayrus
учусь верстке

Как узнать IP адрес посетителя и ссылку сайта?

Ребят,подскажите плиз,как узнать IP адрес посетителя и url сайта,откуда пришла заявка,сам ноль в РНР,из 10/1 максимум,тестировал разные методы,в том числе
$site = $_SERVER['HTTP_HOST'];
$_SERVER['REMOTE_ADDR'];
но ничего не работает,есть вот такой РНР скрипт,с которого не могу это сделать


<?php

$name = $_POST['name'];
$phone = $_POST['phone'];
$link = $_POST['link'];
$email = $_POST['email'];
$comment = $_POST['comment'];
$token = "463035794:AAHQ61BVBhoKYg5LOB1ffSDf_BMyl3nUiU4";
$chat_id = "-299086651";
$arr = array(
  'Имя пользователя: ' => $name,
  'Телефон: ' => $phone,
  'Ссылка' => $link,
  'Email' => $email,
  'Вид заявки' => $comment,
);

foreach($arr as $key => $value) {
  $txt .= "<b>".$key."</b> ".$value."%0A";
};

$sendToTelegram = fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r");

if ($sendToTelegram) {
  header('Location: success.html');
} else {
  echo "Error";
}
?>
  • Вопрос задан
  • 294 просмотра
Пригласить эксперта
Ответы на вопрос 1
erge
@erge
Примус починяю
IP:
<?php
 
$client  = @$_SERVER['HTTP_CLIENT_IP'];
$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote  = @$_SERVER['REMOTE_ADDR'];
 
if(filter_var($client, FILTER_VALIDATE_IP)) $ip = $client;
elseif(filter_var($forward, FILTER_VALIDATE_IP)) $ip = $forward;
else $ip = $remote;
 
echo $ip;
 
?>


Страница реферер:
$_SERVER['HTTP_REFERER'] предоставит вам URL страницы реферера, если таковой существует.

PS: пробуйте хоть иногда пользоваться поиском, все находится!
Поиск: IP адрес посетителя
Результат: Как в PHP узнать IP адрес сервера и посетителя

Поиск: PHP URL referer
Суперглобальный массив $_SERVER
Элемент $_SERVER['HTTP_REFERER']
В элементе $_SERVER['HTTP_REFERER'] приводится адрес страницы, с которой посетитель пришёл на данную страницу. Переход должен осуществляться по ссылке.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы