2012-07-01 97 views
0

問題我認爲我正確地這樣做,但它沒有得到存儲的cookie信息與setCookie方法

的login.php

session_start(); 
     $_SESSION['username'] = $user; 
     $_SESSION['password'] = $pass; 
      if(isset($_POST['remmemberme'])) 
    { ob_start(); 
     setcookie("kitbusername", $_SESSION['username'], time()+60*60*24*100); 
     setcookie("kitbpassword", $_SESSION['password'], time()+60*60*24*100); 
     echo '<script> 
     window.top.location.href = "index.php"; 
     </script>'; 
    } 

的index.php

<p class="welcome">Hello 
     <?php 
session_start(); 
if($_COOKIE['kitbusername']){echo $_SESSION['username'];} 
       elseif($_SESSION['username']){ 
         echo $_COOKIE['kitbusername']; 
       } else{ 
        echo 'Guest'; 
            }?> 
</p> 

的header.php

<?php session_start(); 
if(isset($_SESSION['username']) || isset($_COOKIE['kitbusername'])){ 
//Log Out Button// ?> 

sessi在啓動設置在

+0

是否正確的格式爲setcookie() – kezi

回答

1

你們沒有的index.php使用session_start()所有頁面

調用ob_start()你叫ob_end_clean()ob_end_flush()ob_clean(),或ob_flush()後?

+0

它設置在頁面 – kezi

+0

之前沒有,你能解釋一下那些是什麼意思嗎? – kezi

+0

如果你不知道它們是什麼意思,那麼你可能並不想使用'ob_start()'。但是,在調用ob_start()後,這些函數都是您調用的函數,它們都控制輸出緩衝。您可能不需要在腳本中這樣做。 –