Сообщение #1 Яков » 24.09.2020, 13:39
Здравствуйте! Подскажите, пожалуйста, есть такой вопрос. Не могу решить задачу, я только начинаю изучать PHP. Интернет-магазин, правда на Simpla cms, но я видел, что некоторый код одинаковый в обоих cms.
Есть такой код в файле index.php
Код: Выделить всё
// Сохраняем последнюю просмотренную страницу в переменной $_SESSION['last_visited_page']
if(empty($_SESSION['last_visited_page']) || empty($_SESSION['current_page']) || $_SERVER['REQUEST_URI'] !== $_SESSION['current_page'])
{
if(!empty($_SESSION['current_page']) && !empty($_SESSION['last_visited_page']) && $_SESSION['last_visited_page'] !== $_SESSION['current_page'])
$_SESSION['last_visited_page'] = $_SESSION['current_page'];
$_SESSION['current_page'] = $_SERVER['REQUEST_URI'];
}
если я правильно понимаю, то этот код отвечает за отражение нынешней и предыдущей страницы. А в файле LoginView.php есть такой код
Код: Выделить всё
// Перенаправляем пользователя на прошлую страницу, если она известна
if(!empty($_SESSION['last_visited_page']))
header('Location: '.$_SESSION['last_visited_page']);
else{
//header('Location: '.$this->config->root_url);
header('location: '.$this->config->root_url.'/'.$this->language->label.'/user');
}
Я добавил в LoginView.php такой код
Код: Выделить всё
print_r($_SESSION);
echo '<br>';
echo $_SERVER['REQUEST_URI'].'<br>';
echo $_SERVER['HTTP_REFERER'];
и на сайте показывает
Код: Выделить всё
Array ( [current_page] => /callme/js/callme.js [shopping_cart] => Array ( ) [captcha_code] => 53174 )
/user/login
https://ayurvedalife.in.ua/
Иногда последнюю просмотренную страницу массив отображает, иногда нет, и если отображает, то какую-то левую, на сайте даже такого файла с таким названием нет, как и с настоящей страницей в массиве.
Может кто-то знает в чём проблема, подскажите или направьте в какую сторону копать. Я сам ума не приложу, что здесь не так. Есть другие сайты на Simpla. На них написан такой же код, но там работает всё хорошо, а на этом нет.
Здравствуйте! Подскажите, пожалуйста, есть такой вопрос. Не могу решить задачу, я только начинаю изучать PHP. Интернет-магазин, правда на Simpla cms, но я видел, что некоторый код одинаковый в обоих cms.
Есть такой код в файле index.php
[code]// Сохраняем последнюю просмотренную страницу в переменной $_SESSION['last_visited_page']
if(empty($_SESSION['last_visited_page']) || empty($_SESSION['current_page']) || $_SERVER['REQUEST_URI'] !== $_SESSION['current_page'])
{
if(!empty($_SESSION['current_page']) && !empty($_SESSION['last_visited_page']) && $_SESSION['last_visited_page'] !== $_SESSION['current_page'])
$_SESSION['last_visited_page'] = $_SESSION['current_page'];
$_SESSION['current_page'] = $_SERVER['REQUEST_URI'];
} [/code]
если я правильно понимаю, то этот код отвечает за отражение нынешней и предыдущей страницы. А в файле LoginView.php есть такой код
[code]// Перенаправляем пользователя на прошлую страницу, если она известна
if(!empty($_SESSION['last_visited_page']))
header('Location: '.$_SESSION['last_visited_page']);
else{
//header('Location: '.$this->config->root_url);
header('location: '.$this->config->root_url.'/'.$this->language->label.'/user');
}[/code]
Я добавил в LoginView.php такой код
[code]print_r($_SESSION);
echo '<br>';
echo $_SERVER['REQUEST_URI'].'<br>';
echo $_SERVER['HTTP_REFERER'];[/code]
и на сайте показывает
[code]Array ( [current_page] => /callme/js/callme.js [shopping_cart] => Array ( ) [captcha_code] => 53174 )
/user/login
https://ayurvedalife.in.ua/[/code]
Иногда последнюю просмотренную страницу массив отображает, иногда нет, и если отображает, то какую-то левую, на сайте даже такого файла с таким названием нет, как и с настоящей страницей в массиве.
Может кто-то знает в чём проблема, подскажите или направьте в какую сторону копать. Я сам ума не приложу, что здесь не так. Есть другие сайты на Simpla. На них написан такой же код, но там работает всё хорошо, а на этом нет.
С уважение, Яков! Всего наилучшего!