Ich habe ein Login-System auf meiner Website mit Sitzungen verwendet. DieseBeschränken Sie den Zugriff auf Seiten mit Sitzungen
ist, wie es aussieht,
<?php
session_start();
ob_start();
include 'includes/db.php';
$idadm=$_POST['idadm'];
$passadm=$_POST['passadm'];
$idadm = stripslashes($idadm);
$passadm = stripslashes($passadm);
$idadm = mysql_real_escape_string($idadm);
$passadm = mysql_real_escape_string($passadm);
$sql="SELECT * FROM admin WHERE aid='$idadm' and password='$passadm'";
$result = $conn->query($sql);
$count = $result->num_rows;
if($count == 1) {
$_SESSION['idadm'] = $idadm;
$_SESSION['passadm'] = $passadm;
if ($_SESSION['idadm'] == 'admin') {
header("location:admin/index.php");
} else {
header("location:subadmin/index.php");
}
} else {
header("location:index.php");
}
ob_end_flush();
?>
db.php hat die Datenbank-Anmeldeinformationen.
Dies ist der Code, der oben auf den geschützten Seiten ist,
<?php
session_start();
if (!isset($_SESSION['idadm'])) {
header('location:/index.php');
die;
}
?>
Das Login-Skript mit Ausnahme von ein Problem, eingeloggte Benutzer gut funktioniert sowohl admin und Subadmin Seiten zugreifen können.
Es gibt nur einen Administratorbenutzer und die ID für diesen Benutzer in der Datenbank lautet 'admin'. Der Administrator sollte nur auf 'admin/index.php' zugreifen können und andere Benutzer sollten auf 'subadmin/index.php' zugreifen können.
Wie ändere ich das Skript, um dies zu erreichen?