2013-10-29 39 views
0

林创建一个网站,我检查了登陆和将用户重定向到索引页面,如果他的登录成功,我想他看到的东西,而不是登录按钮更改索引页据登录

别的我对我的查询采用了这种方法

<?php 
      if(!isset($_SESSION['uid'])) 
      { 
      ?> 
      <a href="Login.php"><span class="Login">Login</span></a> 
      <?php 
      } 
      else if(isset($_SESSION['uid'])) 
      { 
      ?> 
      <a href="postThread.php"><span>Post</span></a> 
      <?php 
      } 
?> 

它似乎并不像我想要的那样工作。 “登录”跨度始终可见,似乎没有设置$ _SESSION ['uid'],但事实并非如此。说实话,我甚至不知道这是否是这样

+0

你在哪里设置会话'uid'? – user2092317

+0

会话uid被设置在我的accesscontrol php中,它将我重定向到这个页面所属的页面 –

+0

是否在这两页中都开始会话? – user2092317

回答

0

你需要把session_start();在每个需要访问(或创建)的任何会话数据之前访问会话数据页面的正确途径。

请参阅:Session Manuel

0
<?php 
    session_start(); 
    $linkPage = 'login.php'; 
    $linkName = 'Login'; 
    if(isset($_SESSION['uid'])) { 
     $linkPage = 'postThread.php'; 
     $linkName = 'Post'; 
    } 
?> 
<a href="<?php echo $linkPage; ?>"><span class="link"><?php echo $linkName; ?></span></a>