Как при повторном посещении отправлять посетителя на последнюю посещенную страницу?

12 3
S
На сайте с 08.02.2017
Offline
7
5336

Не знаю как объяснить, но попробую.

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

Ребят, буду очень признателен если кто поделится кодом.

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#1

В смысле бесплатно за вас написать код? Ну просто от делать нечего...

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
Ragnarok
На сайте с 25.06.2010
Offline
239
#2

siew,

1. при загрузке каждой страницы сайта писать в какую-нибудь куку lastPage адрес страницы

siew:
Через какое-то время

при загрузке страницы проверять наличие куки и смотреть, если прошло "какое-то" время и запрашивается главная, то делать редирект через header("location:...

//TODO: перестать откладывать на потом
S
На сайте с 08.02.2017
Offline
7
#3
Ragnarok:
siew,
1. при загрузке каждой страницы сайта писать в какую-нибудь куку lastPage адрес страницы

при загрузке страницы проверять наличие куки и смотреть, если прошло "какое-то" время и запрашивается главная, то делать редирект через header("location:...

Вот есть код, но куда прописать адреса главной и конечной страницы?


lastPageVisited = localStorage.getItem('lastPageVisited', location.href);
if(lastPageVisited){
location.href = lastPageVisited;
}
localStorage.setItem('lastPageVisited', location.href);
S
На сайте с 30.09.2016
Offline
469
#4

На сервере писать надо, а не на клиенте.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
tommy-gung
На сайте с 22.11.2006
Offline
300
#5

Sitealert, а какая в данном случае разница?

Здесь не могла быть ваша реклама
S
На сайте с 08.02.2017
Offline
7
#6
Sitealert:
На сервере писать надо, а не на клиенте.

Ребят, а можно конкретней? Тот код, что я привел верный?

Допустим адрес главной http://site.ru, адрес третей (конечной) страницы http://site.ru/3.html

Что куда прописать? Подскажите, плиз.


lastPageVisited = localStorage.getItem('lastPageVisited', location.href);
if(lastPageVisited){
location.href = lastPageVisited;
}
localStorage.setItem('lastPageVisited', location.href);
Joker-jar
На сайте с 26.08.2010
Offline
167
#7

Предположу, что в скрипт, подгружающийся на всех страницах сайта.

S
На сайте с 30.09.2016
Offline
469
#8

tommy-gung, Если запишем на клиенте, то сначала попадём на страницу по адресу, прочитаем js, а потом переадресуем. И ещё неизвестно, где и как этот скрипт записан. А если на сервере - то сразу переадресуем.

---------- Добавлено 15.02.2017 в 15:16 ----------

siew, для начала

lastPageVisited = localStorage.getItem('lastPageVisited');

Но при таком коде Вы навеки застрянете на этой странице.

S
На сайте с 08.02.2017
Offline
7
#9
Sitealert:
Но при таком коде Вы навеки застрянете на этой странице.

Мне это и надо.

---------- Добавлено 15.02.2017 в 15:45 ----------

Ну что поможем мне кто нибудь, с содержимым кодов?

alphabro
На сайте с 26.10.2015
Offline
12
#10

siew,

На каждой странице ставишь в начале кода setcookie('LastPage', 'тут_урл_текущей_страницы', time() + 3600 * 24); (тут кука ставится на сутки, время регулируйте сами). Данное решение реализует запись урла последней страницы на вашем сайте, которую посещал пользователь.

Потом на главной странице сайта:

if (isset($_COOKIE['LastPage'])) {

header('Location: ' . $_COOKIE['LastPage']);

exit();

}

Ну, если я правильно понял то, чего вы хотите.

---------- Добавлено 15.02.2017 в 15:59 ----------

Сумбурно, абстрактно написал, но как-то так.

Предоставляю услуги по работе с технологиями: PHP, Javascript, CMS, WordPress, Joomla, DLE, MySQL, HTML, CSS и т.д. (/ru/forum/955675). Skype: albrazza. Jabber: albrazza@jabbim.cz. ICQ: 391087.
12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий