我有一個簡單的登錄表單,如果一切都正確,我只想重定向到'login.php'。我怎樣才能做到這一點?目前它每次按下提交按鈕時都會將您重定向到「login.php」,即使我已經使用PHP進行表單驗證。我對此很陌生,對我來說很裸露。感謝提前:)如何使此登錄表單動態重定向?
***所有的HTML設置了正確的,我只是覺得沒有必要將它添加在
的functions.php:
function db_connect() {
define("DB_SERVER", "localhost");
define("DB_USER", "user");
define("DB_PASS", "password");
define("DB_NAME", "database");
$connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
mysqli_select_db("database");
}
開始
<?php
session_start(); // Starts the session for login
require_once 'functions.php'; // This has the functions for the login process
?>
中的文件:
<?php
$form = "<form action='login.php' method='post'>
<table>
<tr>
<td>Username:</td>
<td><input type='text' name='user' /></td>
</tr>
<tr>
<td>Password:</td>
<td><input type='password' name='password' /></td>
</tr>
<tr>
<td></td>
<td><input type='submit' name='login_btn' value='Login' /></td>
</tr>
</table>
</form>";
if ($_POST['login_btn']) {
$user = $_POST['user'];
$password = $_POST['password'];
if ($user) {
if ($password) {
db_connect();
$password = md5(md5("dF83sDFJ9f8" . $password . "ugj483DAhD2"));
$query = mysqli_query("SELECT * FROM user WHERE username='" . $user . "'");
$numrows = mysqli_num_rows($query);
// Checks to see which form rows have data
// If the username is entered (if there is 1 piece of data in $numrows)
if ($numrows == 1) {
$row = mysqli_fetch_assoc($query);
$db_id = $row['id'];
$db_user = $row['username'];
$db_pass = $row['password'];
$db_active = $row['active'];
if ($password == $db_pass) {
if ($db_active == 1) {
$_SESSION['userid'] = $db_id;
$_SESSION['username'] = $db_user;
echo "You have been logged in as <b>" . $db_user . "</b>";
} else {
echo "You must activate your account to login " . $form;
}
} else {
echo "Incorrect password " . $form;
}
} else {
echo "Incorrect username " . $form;
}
mysqli_close();
} else {
echo "You must enter your password " . $form;
}
} else {
echo "You must enter your username " . $form;
}
} else {
echo $form;
}
?>
文檔
如果一切不正確,你想發生什麼?您無法僅使用服務器端代碼(PHP)停止提交到服務器;例如,你需要使用Javascript來禁用提交按鈕。 – vicvicvic
看看這個:http://stackoverflow.com/questions/768431/how-to-make-a-redirect-in-php – Neat
使用JavaScript來驗證您的表單,讓它提交或不 –