![](/img/trans.png)
[英]I am having some issues in understanding PHP variable syntax in a WordPress string
[英]I am having some php login issues
我有一個奇怪但很簡單的登錄問題。 在此處使用代碼時,會話部分會出現問題。 驗證登錄信息可以正常工作,但是在成功登錄時不會重定向。 如果我注釋掉會話信息,則可以正常工作。 這既發生在我的process-login.php頁面上,也發生在我的success.php頁面上。 任何想法將不勝感激。
先感謝您。
這是我的登錄頁面:
<form action="process-login.php" method="post">
<fieldset>
<legend>Login Form</legend>
<label for="username">Username:</label>
<input type="text" id="username" name="username" />
<label for="password">Password:</label>
<input type="password" id="password" name="password" />
<button type="submit">Send</button>
</fieldset>
</form>
這是我的過程登錄頁面:
<?php
ob_start();
// Set form data as variables
$myusername=$_POST['username'];
$mypassword=$_POST['password'];
// DB login
$host="localhost";
$username="root";
$password="pass1";
$db_name="contact";
$tbl_name="users";
// Open database connection
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// Query with data
$query="SELECT * from $tbl_name where username='$myusername'
and password='$mypassword'";
$result=mysql_query($query);
// Check for entry
$count=mysql_num_rows($result);
// If it matches register and send on
if($count==1){
session_start("username");
session_start("password");
header("location:success.php");
}
else {
echo "Wrong!";
}
ob_end_flush();
?>
最后,這是我的成功頁面:
<?php
session_start();
if(!isset($_SESSION['username'])){
header("location:login.php");
}
else
{
echo "Welcome";
}
?>
請讓我知道是否需要更多信息
session_start()
創建一個會話。 它不需要任何參數。
要在會話中存儲數據,您需要$_SESSION['foo'] = $bar;
首先轉到PDO。 二讀有關session_start()和如何設置$ _SESSION vars。
session_start();
$_SESSION['username']='me';
if(!isset($_SESSION['username'])){
header("Location:login.php");
}
您只需調用一次session_start()
。 通過超級全局變量為您的會話注冊var:
session_start();
$_SESSION['username'] = $myusername;
$_SESSION['password'] = $mypassword;
然后,您可以在session_start()
之后在任何站點上使用$_SESSION['password']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.