當我填寫我的表單時,它會檢查文件,但它保持在那裏,並且不會繼續到下一個文件。我試圖迴應一些變量,並檢查我的數據庫是否一切正確,數據庫中的所有內容都是正確的,但一些它如何進一步發展。我使用的用戶名和密碼也存在於數據庫中。登錄時遇到問題,檢查後不想繼續
這是腳本檢查
<?php
$host = "localhost";
$username = "root";
$password = "root";
$db_name = "vgv";
$tbl_name = "user";
$link = mysqli_connect($host, $username, $password, $db_name);
$myusername = $_POST['myusername'];
$mypassword = md5($_POST['mypassword']);
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysqli_real_escape_string($link, $myusername);
$mypassword = mysqli_real_escape_string($link, $mypassword);
$sql = "SELECT * FROM $tbl_name WHERE username = '$myusername' and password = '$mypassword'";
$result = mysqli_query($link, $sql);
$count = mysqli_num_rows($result);
echo $count;
if($count == 1){
session_register("myusername");
session_register("mypassword");
header("location:admin.php");
}
else {
echo "Username doesn't exist or your password is wrong";
}
mysqli_close($link);
?>
這是我使用的形式。
<DOCTYPE!>
<html>
<head>
<meta charset="utf-8"/>
</head>
<body>
<table>
<tr>
<form name="form1" method="post" action="checklogin.php">
<td>
<table class="login">
<tr>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="myusername" placeholder="username" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="mypassword" placeholder="password" type="password" id="mypassword"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
</div>
</body>
</html>
提交後,我收到此錯誤信息
Warning: Cannot modify header information - headers already sent by (output started at /Users/user/Desktop/login/checklogin.php:28) in /Users/user/Desktop/login/checklogin.php on line 33
討論你不需要'在session_start();'?你確定使用'header'重定向嗎?每次提交表單時都會收到錯誤信息嗎? – 2014-10-01 08:47:49
頁面不重定向到admin.php?您收到的任何錯誤消息? – TBI 2014-10-01 08:48:28
我會檢查它 – 2014-10-01 08:59:40