如何仅从某些链接访问网页

时间:2012-08-15 21:27:45

标签: php html database paypal

我正在建立一个网站,您必须先付费(通过PayPal)才能访问网站的某些安全部分。我已将其设置为“注册”按钮将您直接转到PayPal,然后在您完成支付后,您将进入注册(root / signup / index.php)页面,您可以在其中输入您的姓名,电子邮件,密码等,此信息存储在数据库中。一旦某人的信息在数据库中,他们就可以登录该网站的安全部分。

我的问题是,用户可以通过访问www.mysite.com/signup/并输入他们的名字/电子邮件/ pw /等来绕过PayPal付款,这些仍然会被输入到数据库中,授予他们访问该网站的权限没有付钱。

有什么方法可以让www.mysite.com/signup/只能从PayPal访问一个页面吗?我设置了一个PayPal按钮,可以在完成付款后将用户带到注册页面,我希望这是用户访问该页面的唯一方式。

3 个答案:

答案 0 :(得分:3)

通常,当用户从PayPal返回时,您可以将它们定向到您网站上的特定页面,然后您可以评估PayPal发布给您的数据。您可以简单地验证用户是否成功购买,如果是,请设置会话变量并将用户定向到您的注册页面。只有当他们有一个有效的会话变量来表明他们是付费客户时,你才会向他们提供注册表格。

如果用户在未经正确验证的情况下到达您的页面,您只需将其重定向到其他位置,或者给他们一些错误消息。

答案 1 :(得分:1)

最好将标记作为$_SESSION变量传递,表明用户已付款,然后以其他方式阻止。

如果你真的还想检查推荐人,你应该让你的脚本检查$_SERVER['HTTP_REFERER']变量并从那里开始。我不完全确定这有多安全。

答案 2 :(得分:0)

如果您知道paypal仅使用一组IP地址来联系您的网站,那么配置网络服务器以仅允许从这些网站进行访问将非常容易。然而,IP可能是欺骗性的。如果你真的需要额外的安全,你将不得不使用证书。