确认用户登录后,应该如何显示只有会员才能看到的页面?
例如
<?php
start_session();
if(isset($_SESSION[userLoggedIn]))
echo 'welcome to the members area!';
else
echo 'You must log in first';
?>
或者
<?php
start_session();
if(!isset($_SESSION[userLoggedIn]))
goto notLoggedIn;
?>
welcome to the members area!
<?php
notLoggedIn:
echo 'You must log in first';
?>
或者
<?php
start_session();
if(isset($_SESSION[userLoggedIn]))
include members.html;
else
include public.html
?>
我不喜欢在 PHP 中有太多的 HTML。
使用include
/require
解决方案时,如何使人们不能直接访问 html 文件?例如include members.html;
,是什么阻止用户输入 url ~/members.html
?ATM 我正在使用 WAMP,但我猜服务器上有设置?
编辑:好的,这就是我的计划:创建两个目录public
并创建private
webroot public
。我将有 1 个页面来检查用户是否已登录,如果是,来自 $_GET['destination'] 的值将用于包含private
目录中的正确页面。有什么我没有想到的陷阱吗?