我寫了條件是密碼和用戶名匹配,它根據條件登錄。但由於我是新來的PHP,我不知道爲什麼它不獲取登錄這不是登錄登錄?
<html>
<head>
</head>
<body>
<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="username" type="text" id="username"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="password" type="password" id="password"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
</body>
</html>
<?php
session_start();
if(isset($_POST['submit']))
{
include('connect.php');
// username and password sent from form
$myusername=$_POST['username'];
$mypassword=$_POST['password'];
// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1)
{
while($query4=mysql_fetch_array($result))
{
extract($query4);
$ul=$userlevel;
if ($ul=='A')
{
$_SESSION["username"]=$myusername;
$_SESSION["password"]=$mypassword;
header("location:projectmanager_main.php");
}
else if ($ul=='B')
{
$_SESSION["username"]=$myusername;
$_SESSION["password"]=$mypassword;
header("location:teamlead_main.php");
}
else if ($ul=='C')
{
$_SESSION["username"]=$myusername;
$_SESSION["password"]=$mypassword;
header("location:employees.php");
}
else
{
$_SESSION["username"]=$myusername;
$_SESSION["password"]=$mypassword;
header("location:admin_main.html");
}
}
}
else
{
echo "<p align='center'>"."<font color='red'>"."Wrong Username or Password. Please Try Again"."</font>"."</p>";
}
}
?>
首先,如果您是PHP新手,請嘗試使用「PDO」或「mysqli」而不是「mysql」擴展名。 – Red
「作爲房屋建築的新人可以請某人免費爲我建造房屋?」嘗試引用任何建築公司提出這樣的建議。 – zerkms
嘗試將PHP代碼放在HTML代碼之上,而不是在下面。 session_start()不應該在那裏工作.. session_start將cookies發送到瀏覽器。 Cookie在HTML/CSS或任何內容發送之前發送。在發送頭文件之前,必須使用session_start()和PHP中的其他頭文件相關功能。使用「回聲」或輸出任何東西(如HTML)將發送標題。 –