<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

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

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

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

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Как получить ключевое слово, по которому пользователь пришел на сайт
22.12.2013 16:36:33 Как получить ключевое слово, по которому пользователь пришел на сайт Сообщение #1
cadaver

cadaver

Новичок

Новичок

Дата регистрации:
22.12.2013 16:34:29

Сообщений: 2

Здравствуйте! Помогите, пожалуйста, с таким вопросом.

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

Вроде что-то и выводится, но в нечитабельном виде типа "sa=t&rct=j&".

Подскажите, что не так в коде?



<h1>
<?php
if ( ($referrer = getenv("HTTP_REFERER") != FALSE)
{
$parse_referrer = parse_url($referrer);
$host = $parse_referrer['host'];
$query = $parse_referrer['query'];
switch($host)
{
case preg_match('#yandex#', $host) ? true : false:
$key = preg_replace('#text\=(.*?)\&.*#', '$1', $query);
break;
case preg_match('#google#', $host) ? true : false:
$key = preg_replace('#q\=(.*?)\&.*#', '$1', $query);
break;
case preg_match('#rambler#', $host) ? true : false:
$key = preg_replace('#query\=(.*?)\&.*#', '$1', $query);
break;
case preg_match('#mail#', $host) ? true : false:
$key = preg_replace('#q\=(.*?)\&.*#', '$1', $query);
break;
default:
$key = FALSE;
}
if ($key != FALSE)
{
$key = urldecode($key);
echo $key; // показывам кей, по которому пришел юзер
}
}
else{echo "qwerty";}
?>

</h1>
Профиль Ответить
22.12.2013 16:45:27 Как получить ключевое слово, по которому пользователь пришел на сайт Сообщение #2
alexandrdante

alexandrdante

Модератор

Модератор

Дата регистрации:
15.11.2013 15:33:40

Сообщений: 207

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

Собственно он вытягивает параметр text из http_referer только тогда,когда текст есть


попробуйте как-то так:

$R=$_SERVER['HTTP_REFERER'];
$A=$_SERVER['REMOTE_ADDR'];
$U=$_SERVER['REQUEST_URI'];
$R=urldecode ($R);
$S=iconv('utf-8', 'windows-1251',$R );
echo "Ваш IP - ".$A."<br>";
echo "Страница входа - ".$U."<br>";
if (strpos($S, "yandex" != 0) {
preg_match('"text=(.*?)[^&]*"', $S, $arr);
echo "Вы пришли с Яндекса по запросу ".$arr[1];
}
elseif (strpos($S, "google" != 0) {
preg_match('/q=(.*)&/sei', $S, $arr);
echo "Вы пришли с Google по запросу ".$arr[1];
}
elseif (strpos($S, "rambler" != 0) {
preg_match('"query=(.*?)[^&]*"', $S, $arr);
echo "Вы пришли с Rambler по запросу ".$arr[1];
}
else {echo "Вы пришли с ".$R;}



Либо пробовать при помощи API метрик различных систем замутить,но это не очень удобно
Профиль Ответить
22.12.2013 23:12:36 Как получить ключевое слово, по которому пользователь пришел на сайт Сообщение #3
cadaver

cadaver

Новичок

Новичок

Дата регистрации:
22.12.2013 16:34:29

Сообщений: 2

Поменял свой код на код, предложенный вами. Теперь запрос выглядит так:

&esrc=s&source=web&cd=3&ved=0CE4QFjAC&url=http://ncity.by/&ei=A_q2UviHJIKctQbcwYD4CA&usg=AFQjCNG5YyeCKcwkKFXkiORIDzvvzyZhKQ

Непонятно, почему приходит в зашифрованном виде, функция urldecode же применяется
Профиль Ответить