我有一个功能,我调用?clear-cart
附加到页面末尾;正如你可能猜到的,这个功能清除了用户的购物车。
我称之为
<a href="?clear-cart">Clear Cart</a>
哪个效果很好(因为它加载了相同的页面,但现在购物车已清除),但地址栏中的URL现在显示为
http://test.local/cart?clear-cart
是否仍然可以致电?clear-cart
,但网址返回 而不 参数? (将其隐藏在用户之外,因为我只是将它用于内部函数调用?)
答案 0 :(得分:4)
而不是GET请求使用POST请求?
答案 1 :(得分:3)
您可以清除购物车,然后立即使用标题重定向(显然在任何输出之前!)。
<?php
header('Location: http://test.local/cart');
... clear the cart ...
?>
有关详细信息,请参阅PHP reference manual。
答案 2 :(得分:1)
根据这一点,你应该做你想做的事情:
if (isset($_GET['clear-cart'])) {
clear_cart();
header('Location: http://test.local/');
}
根据您的需要进行修改。
答案 3 :(得分:0)
您可以在另一个脚本中编写购物车清算代码,并在完成后将其重定向回您的页面。
答案 4 :(得分:0)
好吧,在清除购物车的功能中,您可以使用header()函数将用户重定向到正确的URL。
答案 5 :(得分:0)
将页面http://test.local/cart链接到页面http://test.local/cart?clear-cart,然后将用户重定向回http://test.local/cart。
/ cart - &gt; / cart?clear-cart - &gt; /购物车
if (isset($_GET['clear-cart'])) {
// Do some cart clearing...
// Redirect back
header('Location: /cart');
exit; // Very important, otherwise the script will continue until it finally redirects
}