Как я могу создать систему входа в систему, в которой могут участвовать только два человека с сеансами в PHP?
Я хочу создать систему входа, в которую смогут войти только два пользователя. Я действительно не хочу использовать базы данных по своим собственным причинам. Реальная проблема заключается в том, что на сайте есть несколько входов в систему, и если вы входите в систему с другой учетной записью в другой части сайта и заходите сюда в «Панель администратора» администратора Панель откроется и позволит любому пользователю создавать новых пользователей с правами администратора.
Мой код:
index.php
<?php
session_start();
define('DS', TRUE);
define('USERNAME', $_SESSION['username']);
define('SELF', $_SERVER['PHP_SELF'] );
$userx = $_SESSION['username'];
if (!USERNAME or isset($_GET['logout']))
include('login/login.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>ADMIN PANEL</title>
<meta name="author" content="INTmAker" />
<meta name="author" content="Leonx">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
</head>
<body>
You are logged in as <?php echo($userx); ?> | <a href="?logout=1">Logout</a>
<br>
<?php
if($userx != "Leonx" || $userx != "INT"){
echo 'You are not an Admin.';
return false;
} else {
echo ' <div>
<input type="text" id="username" name="username" placeholder="Username" value=""/>
<input type="password" id="password" name="password" placeholder="Password" value=""/>
<input type="submit" id="postform" onclick="post()" value="Submit">
</div>
<input type="checkbox" onclick="admin()">Admin access?
<input type="checkbox" onclick="password()">Pokaži lozinku';
}
?>
<script>
function post() {
var username = $('#username').val();
var password = $('#password').val();
$.post('multipass.php', {postuser:username, postpass:password},
function(data)
{
alert("Uspjesno dodan korisnik!");
});
}
function post2() {
var username = $('#username').val();
var password = $('#password').val();
$.post('adminpass.php', {postuser:username, postpass:password},
function(data)
{
alert("Uspjesno dodan admin!");
});
}
function password() {
var x = document.getElementById("password");
if (x.type === "password") {
x.type = "text";
} else {
x.type = "password";
}
}
function admin(){
document.getElementById('postform').setAttribute('onclick','post2()');
}
</script>
</body>
</html>
login.php
<?php defined('DS') OR die('No direct access allowed.');
include('users.php');
if(isset($_GET['logout'])) {
$_SESSION['username'] = '';
header('Location: ' . $_SERVER['PHP_SELF']);
}
if(isset($_POST['username'])) {
if($users[$_POST['username']] !== NULL && $users[$_POST['username']] == $_POST['password']) {
$_SESSION['username'] = $_POST['username'];
header('Location: ' . $_SERVER['PHP_SELF']);
}else {
//invalid login
echo "<p>Korisničko ime ili lozinka su krivi!</p>";
}
}
echo '<!DOCTYPE html>
<html>
<head>
<title>EDITOR LOGIN</title>
<link rel="stylesheet" type="text/css" href="login/style.css">
</head>
<body>
<div class="header">
<h2>Admin</h2>
</div>
<form method="post" action="'.SELF.'">
<div class="input-group">
<label for="username">Korisničko ime</label> <input type="text" id="username" name="username" value=""/>
</div>
<div class="input-group">
<label for="password">Lozinka</label> <input type="password" id="password" name="password" value="" />
</div>
<input type="submit" class="btn" name="submit" value="Login" class="button"/>
</form>
</body>
</html>';
exit;
?>
Мое ожидание : Если вошедшее в систему имя пользователя не Leonx или INT, то я бы хотел, чтобы пользователь просто получил сообщение «Вы не администратор». и если имя пользователя - Leonx или INT, то я бы хотел, чтобы отображались поля ввода from.