Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/29: Рейтинг темы: голосов - 29, средняя оценка - 4.72
 Аватар для ProCode
37 / 37 / 6
Регистрация: 11.12.2016
Сообщений: 329
Записей в блоге: 6

Как правильно передать значение document.referrer через GET если пользователь из поисковика?

26.01.2017, 20:55. Показов 10865. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую!

Ситуация стандартная, формирую код типа

JavaScript
1
2
3
<script language='javascript'><!--
document.write('<img src="http://stat.ru/counter.png?ref=' + encodeURIComponent(document.referrer) + '" />');
//--></script>
и оно, в общем-то, работает, на стороне сервера в PHP

PHP
1
$_GET['ref']
содержит всё, что и должно содержать.

Но это если реферер - обычный сайт, или Google.

А вот если реферер содержит, скажем, урл из поискового запроса Яндекса (или другого поисковика) - не работает.

То есть, в этом случае $_GET['ref'] содержит какой-то адский ад (содержимое специально посмотрел через alert), длиной символов 500, не меньше, и сформированная картинка вообще не функционирует, то есть браузер за ней к серверу, судя по всему, не обращается.

Пробовал экранировать содержимое document.referrer и так

JavaScript
1
escape(document.referrer)
и вообще не экранировать.

Результат одинаков - document.referrer из поисковика ломает код, и счетчик этот запрос не записывает вовсе.

Кто виноват? Что делать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.01.2017, 20:55
Ответы с готовыми решениями:

Как передать referrer в iframe через jQuery?
Приветствтую. Подскажите, пожалуйста, что в коде поменять мне. Я уже кучу вариантов перепробовал. $(document).ready(function (){ ...

QWeView подмена document.referrer
Каким образом можно установить свой document.referrer?

Помогите с передачей ''''document.referrer'''' от HTML на PHP
Помогите с передачей ''''document.referrer'''' от HTML на PHP! Кто знает как это сделать пожалуйста напишите. Только пожалуйста не...

2
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
26.01.2017, 22:01
ProCode, https://yandex.ru/blog/webmaster/19042
1
 Аватар для ProCode
37 / 37 / 6
Регистрация: 11.12.2016
Сообщений: 329
Записей в блоге: 6
26.01.2017, 23:15  [ТС]
Цитата Сообщение от Padimanskas Посмотреть сообщение
Это ответ на вопрос "кто виноват?", а мне нужно на смежный

Хорошо, пойдем по варианту Б )) сейчас новой темой сделаю, бо это другая задача получается.

Добавлено через 12 минут
Как вырезать кусок строки, содержащий url? - сделал отдельной темой

Добавлено через 24 минуты
Проблема частично решена (см. по ссылке выше) - просто вырезал первые 128 символов из реферера и передал их на сервер вместо самого реферера. Заходы с Яндекса стали нормально узнаваться (хотя и обрезанно).

А вот bing и mail.ru даже так не работают. Видимо там что-то совсем уж плохое

Добавлено через 27 минут
bing и mail.ru вылечил уменьшением вырезаемого кусочка до 64 символов.

Понятия не имею почему так происходит.

Но для моей ситуации сойдет и так (поисковая строка - не критична).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.01.2017, 23:15
Помогаю со студенческими работами здесь

Как правильно передать значение ' 123' ?
как правильно передать значение ' 123' str=' 123' //строка из 6 символов передаем default.asp?ID=str получаем str =...

Как правильно передать кириллицу через сокеты?
У меня есть TCP клиент в телефоне и TCP сервер на ноуте. Когда я передаю английские сообщения(символы ASCII) все передается нормально. А...

Как правильно передать массив через указатель?
#pragma once #include &lt;vector&gt; class TOMathModel { public: TOMathModel(void); ~TOMathModel(void);

Как можно насильно записать в страницу любое значение HTTP-REFERRER ?
Люди помогите, как можно насильно записать в страницу любое значение HTTP-REFERRER ???

Как правильно передать подсчитанное значение массива в класс?
в методе ReadData я считываю файл и заношу данные в двумерный массив massiv, инициализирую тоже в этом методе потому что заранее не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru