2013-12-24 91 views
0

我正在爲我的計算機科學課做一個logoquiz,並且我正在忙於使用帳戶名和電子郵件地址註冊用戶。 成功註冊後,人們將被重定向到index.php用於在頁面間保存變量的會話

在頁面被重定向到,有一個綠色框表示註冊完成,並給他們進一步的指示。

測試時,我每次訪問index.php時,都會在電子郵件和用戶名中沒有任何提示。

<!--- Notice itself ---> 
<?php 
    session_start(); 
    if(isset($_SESSION)){ 
     $email = $_SESSION["email"]; 
     $username = $_SESSION["username"]; 
    ?> 
<!--- Green box that pops up ---> 
     <div class="notice success"><i class="icon-ok icon-large"></i> Je registratie is succesvol verzonden <?php echo $username;?><br> 
     Er is een email verzonden naar <?php echo $email; ?>.<br> 
     Volg de instucties in deze mail om te kunnen beginnen<a href="#close" class="icon-remove"></a></div> 

     <?php 
     session_destroy(); 
     } ?> 

在寄存器頁本身(RegSpelers.php),這個碼被用於

<?php }elseif($wrong == FALSE && !empty($_POST)){ 
    // After checking for wrong entered field or nothing at all use session. 
    $_SESSION["email"] = $email; 
    $_SESSION["username"] = $username; 
    header ('Location: index.php'); 
    } ?> 
+4

'在註冊頁面你有一個'在session_start()? – 2013-12-24 00:15:16

回答

2

由於

session_start(); 

的$ _SESSION數組存在,isset返回的會話真正。

現在也許這就是您要尋找的

if(isset($_SESSION['email'])){ 
+0

不知道這是如此簡單,但我也必須在RegSpelers.php中使用session_start() – teunw

+0

任何時候想要獲取或設置會話變量時,都必須調用session_start()。通過這種方式,PHP爲用戶會話打開句柄並能夠修改數據。 – Jompper