我有一个奇怪的问题,直到第二次点击才将用户设置为登录到会话(尽管他们已登录)
所以,我有一个如下所示的登录下拉列表:
我将用户发送到 ACCOUNT-SELECTOR。PHP 根据企业或个人帐户确定适当的验证:
if (isset($_POST['loginAccountType']) && $_POST['loginAccountType'] == 'individual') {
include('ind_login.php');;
} elseif (isset($_POST['loginAccountType']) && $_POST['loginAccountType'] == 'business') {
include('bus_login.php');
} else {
include('error_login.php');
}
我session_start();
的 account-selector.php 页面和我的ind_login.php
页面都有。而且,两者都位于页面的最顶部(在其他任何内容之前)。
登录后,这是我的观点:
如您所见,我可以$_SESSION['Ind_ID']
在ind_login.php
页面上设置并返回并查看您的个人资料作品(链接到会话 ID)。
但是,当代码说此按钮应设置为 display:none 时,我们仍然在导航上看到一个 LOG IN 按钮:
if(isset($_SESSION['Ind_ID'])) {
$accIndStyle = "visibility: visible;";
} else {
$accIndStyle = "display:none;";
}
我知道这是正确的代码,因为按钮确实变成了显示:其他按钮没有。但是,如果我第二次登录,或者使用会话(开始)转到不同的页面,该站点将读取$_SESSION['Ind_ID']
设置并隐藏登录按钮并用注销按钮替换它。
非常感谢任何帮助。