- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Подскажите как записать именно внешний источник перехода?
Если при регистрации прописываю просто
$data['referer'] = getenv("HTTP_REFERER");
то учитываются также переходы с самого сайта. а на страницу регистрации ведь переходят чаще всего только с внутренних страниц.. или только через кукисы такое можно осуществить?
Что-то типа в index.php прописать
if(empty($_COOKIE['referer'])) setcookie ("referer", $_SERVER['HTTP_REFERER'],time()+(5*24*60*60), "/");
И затем на странице регистрации
if (!empty($_COOKIE['referer'])) $data['u_referer'] = $_COOKIE['referer'];
if (!preg_match('@'.$_SERVER["HTTP_HOST"].'@smi',$_SERVER["HTTP_REFERER"]))
{
$data['referer'] = $_SERVER["HTTP_REFERER"];
}
В данном случае я так понимаю referer записывается только если переход был произведен с внешнего источника именно на страницу регистрации?
Мне нужна не только страница регистрации, а вообще переход на сам сайт. Всеравно на какую страницу. Нужно знать именно откуда перешли на сам сайт - и это записать в базу данных при регистрации.
Значит вы вообще ничего не понимаете в коде, да? При чём тут страница регистрации?
LEOnidUKG, переменная $data['referer'] у меня указывается только на странице регистрации. А Вы предлагаете просто проверку значения $_SERVER["HTTP_REFERER"]
Совпадает или нет с $_SERVER["HTTP_HOST"]
Или я неправ? preg_match действительно плохо знаю. Но даже я знаю, что это просто проверка.
Или я неправ? preg_match действительно плохо знаю. Но даже я знаю, что это просто проверка.
Не, этот код надо читать так - если в переменной реферер не содержится фрагмент совпадающий с названием хоста сайта, тогда записываем в $data['referer'] реферер, если фрагмент не найден, то $data['referer'] останется пустой.LEOnidUKG, в вашем примере внешние ссылки вроде refer.ru/?r=site.ru записываться не будут.
Тогда надо использовать parse_url()
$refs=parse_url($_SERVER["HTTP_REFERER"]);
if ($refs["host"]!=$_SERVER["HTTP_HOST"]) //если хосты не совпадают
{
$data['referer'] = $_SERVER["HTTP_REFERER"];
//запись в базу
}
Ёхан Палыч, дело в другом. Если так реализовывать - то у меня везде будут пустые $data['referer'], т.к. переменная у меня записывается только на странице регистрации, а на нее люди всегда заходят с внутренних страниц сайта. Никто не заходит на страницу регистрации напрямую с других сайтов (ну может несколько человек из тысячи - ито скорей боты).
Мне же нужно узнать откуда человек нашел наш сайт. Самый первый HTTP_REFERER.
Я так понял только через кукисы такое проще всего сделать.. Как я и писал в начале
в index.php прописать
if(empty($_COOKIE['referer'])) setcookie ("referer", $_SERVER['HTTP_REFERER'],time()+(5*24*60*60), "/");
И затем на странице регистрации
if (!empty($_COOKIE['referer'])) $data['u_referer'] = $_COOKIE['referer'];
В таком случае как только человек зайдет на сайт - сразу пропишется HTTP_REFERER в кукисах. И дальше уже меняться кукисы не будут.
Просто думал можно без кукисов обойтись..поэтому и спросил.
Kel_Kimpbell, то есть надо запомнить откуда пришел и использовать только на странице регистрации? А если регистрации не будет то и писать не надо? Тогда вы правильно поняли - куки.
Просто думал можно без кукисов обойтись..поэтому и спросил.
Ну или сессии.
Ёхан Палыч, да, именно так. Использовать только если человек регистрируется.
Уже сделал через кукисы. Все работает. Спасибо :)