Я закодировал форму входа, все работает (соединение с db, query, result). но я хочу показать регистрационную форму или нет! Я должен принять решение в соответствии с переменной $countResult
. Если он равен 0, покажите форму! если он равен 1, не отображать форму, а затем перенаправлять на другую страницу.Форма входа в систему не работает
$countResult
работает до // it is working up to the here
. Зачем?
<?php
session_start();
$_SESSION["username"] = "";
$_SESSION["userGroup"] = "";
require_once 'db.php';
$username ;
$usergroup ;
$loginError = "";
$usernameError = "";
$passwordError = "";
$query = "SELECT usergroup FROM personnel";
$result = "";
$queryResult = '';
static $countResult = 0 ;
$connectionLink = connectToDB();
$selectedDB = selectDB("ghiasvan" , $connectionLink);
static $showForm = True ;
if($_SERVER["REQUEST_METHOD"] == "POST"){
//global $showForm, $countResult;
if(!empty($_POST["username"]))
$username = trim($_POST["username"]);
else
$usernameError = "fill username";
if(!empty($_POST["password"]))
$password = trim($_POST["password"]);
else
$passwordError = "fill passowrd";
//echo password_hash($password, salt);
if(empty($password) && empty($username))
$loginError = "<b>fill username and password<b/>" ;
if(empty($passwordError) && empty($usernameError)){
$query .= " WHERE username = '$username' and password = '$password' ";
$queryResult = databaseQuery($query);
$countResult = mysql_num_rows($queryResult);
if($countResult == 0) {
$showForm = TRUE;
}
else if ($countResult == 1) {
$showForm = False;
$row = mysql_fetch_row($queryResult);
$usergroup = $row[0] ;
$_SESSION["userGroup"] = $usergroup;
}
}
} // end of if submit $_POST
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
global $countResult;
if($countResult == 0){
$showForm = TRUE;
} else if ($countResult == 1) {
$showForm = FALSE;
}
if ($showForm){
echo "<title>Login Form</title>";
echo '<link href="/cafecalendar/css/login.css" rel="stylesheet" type="text/css" />';
}
?>
// it is working up to the here
</head>
<body>
<?php
if ($countResult == 0){
?>
<div id="divForm">
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="POST">
<div id="inputPos">
Username :<br /><input type="text" name="username" id="username" /><br />
Password :<br /><input type="password" name="password" id="password" /><br />
<input type="submit" value="Login" name="submit" id="submit"><br />
<?php
if($loginError){
echo $loginError;
} else{
echo $usernameError . $passwordError;
}
?>
</div>
</form>
</div> <!-- end of div form -->
<?php
} // end of showing loggin form
else if ($countResult == 1){
if($usergroup == 1){
header("Location: http://localhost/ghias/admin.php");
die();
}
else if ($usergroup == 2){
header("Location: http://localhost/ghias/teacher.php");
die();
}
else {
header("Location: http://localhost/ghias/admin.php");
die();
}
}
?>
</body>
</html>
Исеть ($ _ POST [ 'Submit'] равно Исеть ($ _ POST [ 'представить ']). – Amish
действительно я пропустил круглую скобку – meda