![](/img/trans.png)
[英]Session after login unsuccess and in login.php check for it, not redirect it to homepage (index.php)
[英]Echoing User's Name on a homepage using a Session in Login.php
我和我的朋友正在他公司的網站上工作。 我們希望在頁面頂部顯示歡迎消息。 我可以顯示用戶名,但不能顯示該用戶的名稱,以便他們登錄並進入主管理頁面后,顯示歡迎,(名稱)! 這就是我想要的。
的login.php
<?php
session_start();
$username = $_POST ['username'];
$password = $_POST ['password'];
if ($username&&$password)
{
$connect = mysql_connect ("localhost","(our login name)","") or die
("Couldn't connect");
mysql_select_db ("jabluco1_surg3") or die ("DataBase does not exist");
$query = mysql_query("SELECT * FROM members WHERE username='$username'");
$numrows = mysql_num_rows ($query);
if ($numrows!=0)
{
while ($row = mysql_fetch_assoc($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if ($username==$dbusername&&$password==$dbpassword&&$numrows>0)
{
$row = mysql_fetch_array($query);
header( 'Location: admin.php' ) ;
$_SESSION['name'] = $row['FirstName'];
$_SESSION['username'] = $username;
}
else
echo "Incorrect Password!";
}
else
die ("User Doesn't Exist");
}
else
die("Please try again!");
?>
在admin.php上回顯
<?php echo"Welcome, ".$_SESSION['name']."!"; ?>
它會回聲你好! 而不是名字。
您的會話將不會被設置,因為您已經重定向到admin.php
。
//header( 'Location: admin.php') ; // <--- Comment this
$_SESSION['name'] = $row['FirstName'];
$_SESSION['username'] = $username;
header( 'Location: admin.php') ; //<-- Add here
exit;
EDIT :
while ($row = mysql_fetch_array($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
$firstname = $row['FirstName'];
}
if ($username==$dbusername&&$password==$dbpassword&&$numrows>0)
{
$_SESSION['name'] = $firstname;
$_SESSION['username'] = $username;
header( 'Location: admin.php' );
exit;
}
從PHP 5.5.0
不推薦使用此( mysql_*
)擴展名,以后將刪除該擴展名。 相反,應使用MySQLi
或PDO_MySQL
擴展。 改用PreparedStatements
更好地抵御SQL注入攻擊!
也在admin.php中
嘗試這樣的事情:
<?php
session_start();
echo"Welcome, ".$_SESSION['name']."!";
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.