我有四页:cart.php
、checkout1.php
、checkout2.php
和checkout3.php
。它们的功能总结如下:
cart.php //display items and quantities in cart with option for coupon code
checkout1.php //input of user address
checkout2.php //order summary
checkout3.php //order placed into SQL
东西通过 保存在购物车中$_SESSION
,但在我$_POST
用来将信息从一个页面带到下一个页面之间。我担心的是www.site.com/checkout2.php
,例如,当用户从他们的地址栏转到时,它将显示一个空白页面(但仍允许他们继续checkout3.php
并浪费 SQL 空间)。在购物车为空时我重定向到的每个页面上index.php
(例如,您在checkout2.php
空购物车的地址栏中输入,它不会显示让您继续的代码位),但如果有内容$_SESSION
但不$_POST
,我不确定如何防止用户搞砸。
我想也许可以使用类似的东西isset()
,但我想要一些类似(伪代码)的东西:
//on checkout2.php
if (previouspage != "./checkout1.php") {
echo "There was an error.";
} else {
//display correct page
}
我知道存在$_SERVER['HTTP-REFERER']
或类似的东西,但我的理解是并非每个浏览器都支持这一点,并且它没有给出引用页面的简洁位置(例如,会说用户来自www.site.com
vs. www.site.com/checkout1.php
)