PHP错误表单 - 在重定向上保留表单的内容

时间:2012-05-31 03:44:56

标签: php mysql

我有一个简单的登录表单,如果发生错误,如密码错误,我需要它能够记住输入的用户名。我会不会使用这个PHP或Javascript,因为我不允许使用JQuery。

我当前的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>');

}

?>

任何帮助将不胜感激。干杯

2 个答案:

答案 0 :(得分:1)

您可以使用$ _SESSION或$ _COOKIE。

对于$ _COOKIE,只需使用setcookie(...)(对于localhost$domain,使用false

对于$ _SESSION,只需将其设置为任何其他数组

要检查是否存在值,请使用isset(...)

答案 1 :(得分:0)

不要使用会话变量..你可以通过在登录失败时将用户名作为参数传递给登录表单来实现这一点。

// Else Echo登录失败。 死('登录失败。点击这里再试一次');

形式 if(isset($ _ GET ['username'])将其设置为登录用户名字段,否则保持空白