2012-05-31 28 views
0

我有一個簡單的登錄表單,如果發生錯誤(例如密碼錯誤),我需要它能夠記住輸入的用戶名。我會去做這個PHP或Javascript,因爲我不允許使用JQuery。PHP錯誤表單 - 在重定向中保留表單的內容

我現在的PHP - (不包括HTML表單)

<?php 
//MySQl Connection 
mysql_connect("localhost", "root", "") or die(mysql_error()); 
mysql_select_db("clubresults") or die(mysql_error()); 

//Initiates New Session - Cookie 
session_start(); // Start a new session 

// Get the data passed from the form 
$username = $_POST['username']; 
$password = md5($_POST['pass']); 

// Do some basic sanitizing 
$username = mysql_real_escape_string($username); 
$password = mysql_real_escape_string($password); 

//Performs SQL Query to retrieve Login Details from DB 
$sql = "select * from admin_passwords where username = '$username' and password = '$password'"; 
$result = mysql_query($sql) or die (mysql_error()); 

//Assigns a Variable Count to 0 
$count = 0; 

//Exectues a loop to increment on Successful Login 
while ($line = mysql_fetch_assoc($result)) { 
    $count++; 
} 
//If count is equal to 1 Redirect user to the Members Page and Set Cookie 
if ($count == 1) { 
    $_SESSION['loggedIn'] = "true"; 
    header("Location: members.php"); // This is wherever you want to redirect the user to 
} else { 

//Else Echo that login was a failure. 
die('Login Failed. <a href=login.php>Click Here to Try Again</a>'); 

} 

?> 

任何幫助,將不勝感激。乾杯

回答

1

您可以使用$ _SESSION或$ _COOKIE。

對於$ _COOKIE,只需使用setcookie(...)(爲localhost,在$domain,使用false

爲$ _SESSION,只是把它像任何其他數組

要檢查值的存在,使用isset(...)

+0

我究竟會怎麼用它來存儲已經被輸入哪些值? – user1371500

+1

我會告訴你什麼時候到我的合作伙伴 –

+0

大概這是什麼時候? – user1371500

0

不使用會話variable..you可以通過傳遞用戶名作爲參數時,登錄失敗的方式登錄表單實現這個..

//否則回顯登錄失敗了。 die('Login Failed。Click Here to Try Again');

形式

如果(isset($ _ GET [「名」])將其設置爲登錄用戶名外地否則保持空