I have a function that I call with ?clear-cart
appended to the end of my page; as you can probably guess, this function clears the user\'s cart.
I call it l
Well, in the function that clears the cart, you could redirect the user to the correct URL, using the header() function.
You can write your cart clearing code in another script and have it redirect back to your page when it's done.
Something along the lines of this should do what you want:
if (isset($_GET['clear-cart'])) {
clear_cart();
header('Location: http://test.local/');
}
Modify to suit your needs.
Have the page http://test.local/cart link to the page http://test.local/cart?clear-cart, which then redirects the user back to http://test.local/cart.
/cart -> /cart?clear-cart -> /cart
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
}
Instead of a GET-request use a POST-request?
You could clear the cart and then immediately redirect using header (obviously before any output!).
<?php
header('Location: http://test.local/cart');
... clear the cart ...
?>
See the PHP reference manual for more details.