2015-02-07 37 views
0

我試圖讓一個人登錄系統,直到頁面在瀏覽器中打開。我的代碼是:
PHP - 以登錄形式製作cookie

($GLOBALS["___mysqli_ston"] = mysqli_connect($hostname, $username, $password)) or DIE('NOT Connected!'); 
((bool)mysqli_query($GLOBALS["___mysqli_ston"], "USE $dbname")) or DIE('Database name is not available!'); 
$login = mysqli_query($GLOBALS["___mysqli_ston"], "SELECT * FROM student WHERE (name = '" .addslashes($_POST['username']) . "') and (password = '" .($_POST['password']) . "')"); 
$row=mysqli_fetch_array($login); 
$a = mysqli_query($GLOBALS["___mysqli_ston"], "SELECT * FROM admin WHERE (username = '" .addslashes($_POST['username']) . "') and (password = '" .sha1($_POST['password']) . "')"); 
$r=mysqli_fetch_array($a); 
if($row){ 
    $_SESSION['user'] = $row['name']; 
    $_SESSION['lname'] = $row['lname']; 
$_SESSION['pass'] = $row['pass'] 
setcookie("cookname", $_SESSION['name'], time()+60*60*24*100, "/"); 
setcookie("cookpass", $_SESSION['pass'], time()+60*60*24*100, "/"); 
    header ("location: ../../gui-student.php"); 
    } 
    elseif($r){ 
$_SESSION['admin'] = $row['id']; 

header ("location: gui-admin.php"); 
    } 
    else { 
     header ("location: ../../index.html?err"); 
     } 
if($row==1) 
     { 
     session_start(); 
     $_SESSION['username']=$userName; 
    header("location: ../../gui-employee.php"); 
    exit(); 
    } 

我試過這個,但它不起作用。我是新來的餅乾,我不知道如何檢查gui-student.php頁面上的cookies。
請多關照

RGDS
Bhawna

+3

我很好奇......你只是輸入行縮進的隨機空間?一對夫婦在舊空格鍵上點擊幾下? – 2015-02-07 07:40:18

+0

好的,您正在設置Cookie。一個好的開始。你在檢查他們嗎? – 2015-02-07 07:41:30

+0

代碼可能會或可能不會很漂亮。但是當*有一些*一致性時,通常會更容易遵循並得到正確的結果。特別是doubled mysql查詢看起來很奇怪,可能會冗餘混淆代碼結構。 - 您必須更具體地瞭解發生了什麼/出了什麼問題。 「不工作」不是有效的問題描述。 – mario 2015-02-07 07:42:15

回答

0

要檢查的Cookie,使用..

$_COOKIE['cookie_name'];你的情況這將是$_COOKIE['cookname'];$_COOKIE['cookpass'];

這會給你的價值設置爲Cookie,即$_SESSION['name']$_SESSION['pass']

+0

如果你想存儲用戶信息,直到頁面關閉,我建議你去'session'去取代... – 2015-02-07 09:17:41