перенаправить ту же страницу, откуда приходит идентификатор - PullRequest
0 голосов
/ 04 октября 2018

Я пытаюсь, что если пользователь нажимает кнопку «Добавить в корзину» из shop-male.php, он переходит в add_cart.php, после завершения процесса он перенаправляет снова shop-male.php, но что, если пользователь нажимает из shop-single.phpи я хочу перенаправить после процесса на shop-single.php, мы лучше понимаем, мой код здесь

shop-male.php

<a href="add_cart?id=<?php echo $row['id']; ?>" class="btn btn-primary btn-sm"><span class="glyphicon glyphicon-plus"></span> Cart</a>

add_cart.php

<?php
session_start();

//check if product is already in the cart
if(!in_array($_GET['id'], $_SESSION['cart'])){
    array_push($_SESSION['cart'], $_GET['id']);
    $_SESSION['message'] = 'Product added to cart';
}
else{
    $_SESSION['message'] = 'Product already in cart';
}

header('location: shop-male');

?>

, а еще одна страница - shop-single.php

<a href="add_cart?id=<?php echo $row['id']; ?>"> <button class="btn btn-primary"><i class="icon-bag"></i> Add to Cart</button> </a>

Я хочу сделать, откуда пользователь нажимает добавить в корзину, перенаправить на ту же страницу после процесса

Ответы [ 4 ]

0 голосов
/ 04 октября 2018

Вы можете проверить это:

if (isset($_SERVER["HTTP_REFERER"])) {
        header("Location: " . $_SERVER["HTTP_REFERER"]);
    }

Или

Вы должны перенаправить страницу магазина-мужчины с текущим идентификатором продукта.Вы можете использовать этот код:

$host = $_SERVER['HTTP_HOST'] . '/';
$project = explode('/', $_SERVER['REQUEST_URI'])[1];
header('location: $host.$project.'/shop-male?'.$_GET['id']);
0 голосов
/ 04 октября 2018

попробуй

header('Location: ' . $_SERVER['HTTP_REFERER']);
0 голосов
/ 04 октября 2018

Попробуйте использовать приведенный ниже код для назначения страницы перенаправления в значении GET

shop-male.php

<a href="add_cart?id=<?php echo $row['id']; ?>&redirect=shop" class="btn btn-primary btn-sm"><span class="glyphicon glyphicon-plus"></span> Cart</a>

add_cart.php

<?php
session_start();

//check if product is already in the cart
if(!in_array($_GET['id'], $_SESSION['cart'])){
    array_push($_SESSION['cart'], $_GET['id']);
    $_SESSION['message'] = 'Product added to cart';
}
else{
    $_SESSION['message'] = 'Product already in cart';
}

if($_GET['redirect']=='single')
{
  header('location:  shop-single');
}
else
{
  header('location: shop-male');

}
?>

shop-single.php

<a href="add_cart?id=<?php echo $row['id']; ?>&redirect=single"> <button class="btn btn-primary"><i class="icon-bag"></i> Add to Cart</button> </a>
0 голосов
/ 04 октября 2018

Используйте $_SERVER['HTTP_REFERER'] в функции заголовка.Подробнее об этом здесь: http://php.net/manual/en/reserved.variables.server.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...