Sceanario :我刚刚完成了我网站的设计,目前正在将其转换为准备好使用PHP。目前,我的索引页面有一个“profile_card”
http://i.stack.imgur.com/Sfmxl.png
这显然是我希望我的登录成员看到的内容,它是我们网站上帐户的基本总结。
但是当客人查看同一页面时我希望他们看到这个,
http://i.stack.imgur.com/cXJo6.png
问题:我如何做到这一点,以便当登录成员查看我的网站时,他们会看到他们的“个人资料卡”,而未登录的访客则会看到“注册按钮”。< / p>
尝试解决方案, 创建一个包含名为player_card.php的文件的函数,该文件包含所有HTML,PHP和MySQL,以便在设置会话['id']时获取用户的详细信息,否则显示按钮。 //我在尝试这个时遇到了一些问题,因为在profile_card.php文件中调用的一些变量不会从index.php中重新获取它们的值,因为我将它像这样路由 index.php - &gt; global_func.php - &gt; function_ProfileCard - &gt;包括profile_card.php。
您建议最简单的方法是什么?我希望我已经使一切都清楚易懂,但如果我没有或你有任何问题可以进一步帮助解决方案,请询问。
感谢阅读!
答案 0 :(得分:3)
来自您的评论:
您应该为登录用户设置并检查会话变量。 - PeeHaa
这就是我尝试过的,但是我的个人资料卡大约有30行HTML,我必须回显每行并更改它以便HTML在PHP内部工作。 - user1171731
您可以在PHP代码中使用HTML。例如:
<?php if (isset($_SESSION['user'])) { ?>
// your html for logged in users here
<?php } else { ?>
// your html for guests here
<?php }
或者更好的可读性:
<?php
if (isset($_SESSION['user'])) {
require('loggedin.php');
} else {
require('guest.php');
}
例如loggedin.php
你可以做类似的事情(注意这只是一个简单的例子):
echo '<h1>Logged in</h1>';
echo '<p>blablablab</p>';
或使用HEREDOC语法:
$str = <<<EOD
<h1>Logged in</h1>
<p>blablablabla</p>
EOD;