Проверка с какой страницы пришел пользователь


Узнать с какого сайта пришел посетитель

Для продвижения своего сайта, вебмастеру полезно знать с каких сайтов пользователи чаще переходят на его сайт. В этом ему поможет суперглобальный массив $_SERVER, а если быть точнее, то PHP переменная $_SERVER[‘HTTP_REFERER’], которая содержит адрес страницы, с которой посетитель пришел на данную страницу.

Так же, для того чтобы узнать с какого сайта пришел посетитель, можно воспользоваться JavaScript кодом следующим образом:

Но всегда следует учитывать тот факт, что JavaScript обрабатывается на стороне клиента (браузера) и не может напрямую передавать данные серверу.

При необходимости, данный скрипт можно немного доработать для того, чтобы полученные данные записывать в файл (или в базу). Для этого придется делать принудительную перезагрузку странички с добавлением $GET данных в строку адреса. Данную базу в дальнейшем можно будет использовать для анализа источников, с которых чаще всего приходят посетители на Ваш сайт.

Так что если Вы планируете сохранять и/или обрабатывать информацию о том, с какого сайта пришел посетитель на Ваш сайт, лучше воспользоваться переменной $_SERVER[‘HTTP_REFERER’].

Пример работы скрипта, определяющего с какого сайта пришел посетитель представлен ниже:

Как узнать с какой страны пришел пользователь

Вот есть у меня сайт site.ru.

И есть у меня две версии en/ и ru/

Так вот как узнать с какой страны пользователь?

Ну как я понял для начала узнаем ip.

Потом мы берем первые две цифры (Как я понял эти цифры определяют страну).

Мы определяем с какой страны пользователь и скидываем человека на нужную версию.

Только пожалуйста сделайте пример.


А код я сам разберу

16.05.2015, 17:42

Узнать из какой страны пользователь
Я принялся локализировать свои проекты под английский язык и мне нужно узнать из какой страны.

Как узнать с какой страны посетитель?
Как узнать с какой страни посетитель? есть ли какая функция?:) Добавлено через 3 часа 11 минут.

Как узнать, откуда пришел запрос?
Здравствуйте, собственно вопрос в названии темы)))

Определите, с какой страницы пришел пользователь

Пользователь должен пройти аутентификацию на сайте auth.ictsupport.ga. После того, как пользователь вошел в систему, его необходимо перенаправить на защищенную страницу, откуда он пришел (ictsupport.ga, account.ictsupport.ga или admin.ictsupport.ga).

Как я могу это сделать?

Решение

На всех ваших страницах (или один index.php) после того, как вы позвонили session_start()
задавать $_SESSION[‘lastUrl’] = $_SERVER[‘REQUEST_URI’] в конце сценария. так что остальная часть вашего скрипта может получить доступ к предыдущему URL, прежде чем он будет позже переоценен.

Другие решения

Использовать $_SERVER[‘HTTP_REFERER’] Это даст последний URL-адрес страницы, будь то из того же приложения или с внешнего сайта.

Первая возможность: вам нужно сделать междоменную аутентификацию.

Проверка с какой страницы пришел пользователь

Частная коллекция качественных материалов для тех, кто делает сайты

Илон Маск рекомендует:  Что такое код setvect


  • Фотошоп-мастер2000+ уроков по фотошопу
  • Фото-монстр300+ уроков для фотографов
  • Видео-смайл200+ уроков по видеообработке
  • Жизнь в стиле «Кайдзен» Техники и приемы для гармоничной и сбалансированной жизни

В этом разделе помещены уроки по PHP скриптам, которые Вы сможете использовать на своих ресурсах.

Фильтрация данных с помощью zend-filter

Когда речь идёт о безопасности веб-сайта, то фраза «фильтруйте всё, экранируйте всё» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Совет: отправка информации в Google Analytics через API

Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.


Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

Совет: активация отображения всех ошибок в PHP

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

Агент

PHP парсер юзер агента с поддержкой Laravel, работающий на базе библиотеки Mobile Detect.

Как определить откуда и по какому запросу зашли на сайт?

Как определить откуда и по какому запросу зашли на сайт?

Встал такой вопрос — как определить откуда и по какому запросу зашли на сайт? Заодно и определить IP адрес зашедшего и запрошенный адрес. На основе эти данных можно написать счетчик, по аналогии с тем, что используется в Метрике от Яндекса.

Скажу сразу — решение не самое оптимально и здесь есть простор для фантазии. В частности, для анализа элемента HTTP_REFERER логичнее использовать регулярные выражения. Но вариант рабочий и на его основе можно написать что-то более серьезное.

Итак, скрипт выглядит следующим образом:

Все очень просто — IP адрес берется из суперглобального массива $_SERVER (элемент REMOTE_ADDR), адрес вхождения — элемент REQUEST_URI. Данные о том, откуда пришел пользователь берем из элемента HTTP_REFERER, который для поисковиков содержит также строку запроса. В дальнейшем эти данные преобразовываются в читабельное представление, примитивным способом определяем с какого поисковика к нам пришли и выделяем строку запроса.

Знай откуда пришел пользователь

Когда вы открываете свой проект вы начинаете писать о нем везде, в том числе и на хабре.

Сервисы статистики типа Google Analytics дадут вам общую оценку трафика, а именно сколько посетителей пришло с какого ресурса. Можно настроить цели(goals) и отследить регистрации или покупки, но этого часто бывает недостаточно.


А что если вам нужна статистика о том откуда идут более активные пользователи или пользователи которые создали больше всего тем на форуме за какой-то промежуток времени, или сделали больше всего покупок в вашем интернет магазине. Вариантов может быть много и такие данные сервисы аналитики уже дать нет смогут.

Чтобы решить эту проблему, нам нужно просто сохранить данные о ресурсе откуда пользователь пришел при регистрации.

Эти данные можно получить, например, из __utmz кук Google Analytics и записать в какое-то поле в базе.

Илон Маск рекомендует:  Что такое код asp aspscripttimeout

Значение куки __utmz обычно выглядит примерно так

static function parseGoogleAnalyticsCookies() <
$returnMap = array();
$cookieVal = $_COOKIE[«__utmz»];
//now split cookie value by |
$arrPairs = explode(‘|’, $cookieVal);
foreach($arrPairs as $pair) <
$pair = explode(‘=’, $pair);
if (sizeof($pair) == 2) <
$key = $pair[0];//look for «.»
if (strpos($key, «.»)) <
$key = substr($key, strrpos($key, «.»)+1 );
>

$returnMap[$key] = $pair[1];
>
>
return $returnMap;
>

Этот код разобьет значение куки __utmz на пары и запишет в ассоциативный массив.

Теперь при регистрации пользователя можно получить эти данные и записать вместе с новым пользователем.

$newUser = $model->create();
//. утснанавливаем имя/хэш пароля и тп
$sourceCookiesData = GoogleAnalyticsCookies::parseGoogleAnalyticsCookies();//GoogleAnalyticsCookies назван для примера
if (isset($sourceCookiesData[‘utmcsr’])) <
$newUser->source = $sourceCookiesData[‘utmcsr’];
>
if (isset($sourceCookiesData[‘utmcct’])) <
$newUser->sourceUrl = $sourceCookiesData[‘utmcct’];
>
$newUser->save();

Мы взяли utmcsr и utmcct которые хранят хост и урл ссылающейся страницы(страниц может быть больше одной, поэтому записываем раздельно).

Теперь все данные хранятся в базе и любую статистику можно собрать простыми SQL запросами.

Таким вот простым способом можно узнать откуда идет более целевой трафик и куда направлять свои усилия при продвижении.

Как определить откуда и по какому запросу зашли на сайт?

Как определить откуда и по какому запросу зашли на сайт?

Встал такой вопрос — как определить откуда и по какому запросу зашли на сайт? Заодно и определить IP адрес зашедшего и запрошенный адрес. На основе эти данных можно написать счетчик, по аналогии с тем, что используется в Метрике от Яндекса.


Скажу сразу — решение не самое оптимально и здесь есть простор для фантазии. В частности, для анализа элемента HTTP_REFERER логичнее использовать регулярные выражения. Но вариант рабочий и на его основе можно написать что-то более серьезное.

Итак, скрипт выглядит следующим образом:

Все очень просто — IP адрес берется из суперглобального массива $_SERVER (элемент REMOTE_ADDR), адрес вхождения — элемент REQUEST_URI. Данные о том, откуда пришел пользователь берем из элемента HTTP_REFERER, который для поисковиков содержит также строку запроса. В дальнейшем эти данные преобразовываются в читабельное представление, примитивным способом определяем с какого поисковика к нам пришли и выделяем строку запроса.

PHP как проверить с какой страницы пришел запрос?

Мне нужно убедиться, что запрос в скрипт приходит с моего сервера. Я нашел $_SERVER[‘REQUEST_URI’] , но он показывает только относительный путь к самому файлу (/order/order.php) . Я использую скрипт через ajax, может в этом проблема?

Как мне получить полный путь или как убедиться, что запрос с моего сервера?

Есть заголовок Referrer, который показывает откуда пришел запрос. Браузер может не отправить эту информацию, и тогда узнать нельзя.

Если браузер отправил эту информацию, то она лежит в $SERVER[‘HTTP_REFERRER’]

Адрес страницы (если есть), которая привела браузер пользователя на эту страницу. Этот заголовок устанавливается веб-браузером пользователя. Не все браузеры устанавливают его и некоторые в качестве дополнительной возможности позволяют изменять содержимое заголовка HTTP_REFERER. Одним словом, в самом деле ему нельзя доверять.

Если вы хотите сделать защиту от подделки запросов, вы можете добавить не угадываемый токен, известный только вашему серверу, в каждый запрос. При этом способе, если запрос приходит без подходящего токена, ему будет отказано в доступе, обычно это используют при защите от CSRF, которая приводит к тому, что хакер может выполнить на неподготовленном сайте массу различных действий от имени других, зарегистрированных посетителей.

По какому запросу найден сайт в поисковике

Автор статьи: Сергей Каминский

Обновление: Многие браузеры могут по-умолчанию скрывать referer, то-есть адрес страницы с которой пришел пользователь, соответственно получить данные может быть невозможно. К тому же Яндекс и Гугл в ближайшее время планируют шифровать запросы пользователя в адресной строке и посмотреть по каким фразам были переходы из этих поисковых систем можно будет только из Яндекс Метрики и Гугл Аналитики соответственно.

Илон Маск рекомендует:  str_pad - Дополняет строку другой строкой до заданной длины

В этой статье я расскажу как написать скрипт, который будет определять с какого поисковика пришел посетитель, по какой поисковой фразе был найден ваш сайт в поисковой системе и количество переходов. Также вы сможете узнать на какие страницы сайта попал посетитель по определенным ключевым словам, что позволит подобрать дополнительные поисковые фразы для дальнейшей оптимизации сайта и оценить уже проделанную работу.

Узнавать все нужные нам данные мы будем по referer (адрес с которого пришел посетитель). Допустим, посетитель искал слово «картошка» и в результатах поиска был также ваш сайт. Если посетитель нажал на ссылку, ведущую на сайт, то его referer будет таким, если он пришел с Яндекса:


В данном адресе есть вся нужная нам информация. Нас интерисует домен и параметр text=, после которого идет поисковый запрос в зашифрованном виде (наша «картошка»). Давайте напишем скрипт, который и будет заниматься обработкой referer, а полученные результаты мы сохраним в базе данных.

Приведенный выше код нужно встроить во все страницы вашего сайта или же вы можете поместить этот код в отдельный файл, а referer и страницу на которой находится посетитель определять с помощью JavaScript и передавать полученные данные PHP-скрипту. Вы можете прочитать об этом в статье «Как передать переменную из JavaScript в PHP».

В config.inc.php занесем информацию для подключения к базе данных и код, который будет соединяться с MySQL.

Напишем install.php, который будет создавать таблицу в базе данных.

Запускаем install.php чтобы завершить установку скрипта. Теперь создадим admin.php, с помощью которого мы будем просматривать все полученные данные.

Интерфейс администрирования – просмотр статистики поисковых фраз

Наш скрипт готов. Он будет работать только для выбранных нами поисковиков. Я привел пример с тремя наиболее известными поисковыми системами, но вы легко можете добавить все, которые посчитаете нужными.

Другие записи по теме в разделе статьи по PHP и MySQL

Проверьте, откуда пришел запрос

на сайте, когда требуется изображение, ссылка выглядит следующим образом

Затем на getimage.php он получает идентификатор, и от него находит нужное изображение и отображает его.

Это прекрасно работает. Как я узнаю, откуда пришел запрос. Итак, на какой странице эта строка была внизу

Так что в конечном итоге я могу узнать, запрошено ли изображение для index.php или about.php и т.д.

Вы можете добавить дополнительный параметр к URL-адресу изображения, который указывает, с какой страницы он был запрошен:

Работает точно так же, как вы это сделали с параметром id .

Преимущество в том, что это не зависит от некоторых браузеров заголовков, отправляемых (или не), как HTTP Referer, то, что у вас нет контроля над с сервера.

Чтобы получить страницу, на которой создается ссылка на изображение, вы можете использовать что-то вроде этого:

Кроме того, в коде используется функция urlencode PHP Manual чтобы атрибут не нарушался.

Если установлено, найдите ключ HTTP_REFERER в массиве $_SERVER :

Адрес страницы (если таковой имеется), которая ссылалась на пользовательский агент на текущая страница. Это устанавливается пользовательским агентом. Не все пользовательские агенты будут установите это, а некоторые предоставляют возможность изменять HTTP_REFERER как особенность. Короче говоря, на это нельзя доверять. (источник)

Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL