0
$stmt = $con->prepare("SELECT * FROM admin WHERE email = ? AND password = ? ");
$stmt->bind_param('ss', $_POST['username'], $_POST['password']);
$result = $stmt->execute();
$stmt->store_result();
if ($result->num_rows > 0) {
while ($member = $result->fetch_assoc()) {
$_SESSION['SESS_MEMBER_ID'] = $member['id'];
$_SESSION['SESS_LAST_NAME'] = $member['email'];
$_SESSION['SESS_FIRST_NAME'] = $member['password'];
session_write_close();
header("location:home.php");
}
} else {
$errmsg_arr[] = 'Wrong Username or Password';
$errflag = true;
if ($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: index.php");
}
}
HTML表單後沒有進行重定向:頁面使用的mysqli prepare語句
<form role="form" action="action.php" method="post" enctype="multipart/form-data">
<fieldset>
<div class="form-group">
<input class="form-control" placeholder="User Name" name="username" type="text" autofocus>
</div>
<div class="form-group">
<input class="form-control" placeholder="Password" name="password" type="password" value="">
</div>
<input type="submit" value="Log In" name="submit" class="btn btn-lg btn-success btn-block">
</fieldset>
</form>
這個代碼是沒有重定向到home.php ..它顯示錯誤的用戶名或密碼。新來的mysqli prepare語句。因此,這裏的任何幫助
我想這是一個錯字,但你不應該在會話中存儲密碼;) – Roboroads
你只希望得到一個結果吧?那麼你不需要'while'循環。正如@Roboroads說的那樣,在會話中存儲密碼並不是一個好主意.. ;-) – Qirel
是'$ _POST ['username']'用戶的電子郵件地址嗎?當涉及到攜帶負載的變量名時,您的代碼似乎非常不一致。 – Roboroads