Я делаю сайт с PHP
.У меня есть список с действиями, и у меня есть несколько вариантов фильтров.Параметры фильтра работают хорошо, но когда я фильтрую и перехожу на страницу сведений об активности, а затем возвращаюсь.Я в конечном итоге на своей домашней странице, но URL-адрес все еще в порядке.
Это URL-адрес, когда я использую параметр фильтра.
index.php?action=page=activities&dayparts%5B%5D=2
Затем я перехожу на страницу подробностей одногомероприятий.Затем я возвращаюсь и оказываюсь на домашней странице, в то время как это URL:
index.php?action=page=activities&dayparts%5B%5D=2
Тот же URL, но я перенаправляю меня обратно на домашнюю страницу.Если я не использую опцию фильтра, и если я перейду к деталям действия, я не вернусь на домашнюю страницу.
Вот так выглядит мой HTML
:
<form id="form--filter" method="get" action="index.php">
<input type="hidden" name="page" value="activities" />
А это мой index.php
:
<?php
session_start();
ini_set('display_errors', true);
error_reporting(E_ALL);
$routes = array(
'home' => array(
'controller' => 'Home',
'action' => 'index'
),
'activities' => array(
'controller' => 'Activities',
'action' => 'activities'
),
'activity-detail' => array(
'controller' => 'Activities',
'action' => 'detail'
),
'yearly-detail' => array(
'controller' => 'Activities',
'action' => 'yearly'
),
'locations' => array(
'controller' => 'Locations',
'action' => 'locations'
),
'register' => array(
'controller' => 'Register',
'action' => 'register'
),
'tickets' => array(
'controller' => 'Tickets',
'action' => 'tickets'
),
'cart' => array(
'controller' => 'Orders',
'action' => 'cart'
),
'checkout' => array(
'controller' => 'Orders',
'action' => 'checkout'
)
);
if (empty($_GET['page'])) {
$_GET['page'] = 'home';
}
if (empty($routes[$_GET['page']])) {
header('Location: index.php');
exit();
}
$route = $routes[$_GET['page']];
$controllerName = $route['controller'] . 'Controller';
require_once __DIR__ . '/controller/' . $controllerName . ".php";
$controllerObj = new $controllerName();
$controllerObj->route = $route;
$controllerObj->filter();
$controllerObj->render();
Я как-то где-то напутал, но яне могу найти это.