Also, Tutorials gibt es zu dem Thema massenhaft. Daher verstehe ich nicht so ganz, warum du da nichts Passendes finden kannst.
Beispieltabelle:
CREATE TABLE `users` (
`id` int(11) NOT NULL,
`user` varchar(32) COLLATE utf8_german2_ci NOT NULL,
`pass` varchar(64) COLLATE utf8_german2_ci NOT NULL,
`email` varchar(64) COLLATE utf8_german2_ci NOT NULL,
`imgurl` varchar(32) COLLATE utf8_german2_ci NOT NULL,
`ondate` datetime NOT NULL,
`isadmin` tinyint(1) NOT NULL DEFAULT 0
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_german2_ci;
--
-- Daten für Tabelle `users`
--
INSERT INTO `users` (`id`, `user`, `pass`, `email`, `imgurl`, `ondate`, `isadmin`) VALUES
(1, 'willi', 'favfvvgERGV-YVsvdfrrfrf', 'willi@example.com', 'images/willi.jpg', '2018-04-02 18:13:03', 0),
(2, 'theo', 'vrfrefvnjalvbehqrlgvbba', 'theo@example.com', 'images/theo.jpg', '2018-04-02 18:13:03', 0),
(3, 'otto', 'refergafrGRegrEGVADDAERRgE', 'otto@example.com', 'images/otto.jpg', '2018-04-02 18:13:03', 1);
Alles anzeigen
Und ein Beispielscript zur Überprüfung des Logins:
<?php
session_start();
if (isset($_POST['user']))
{
$mysqli = mysqli_connect("host", "user", "pw", "datenbank");
if (mysqli_connect_errno())
die("Connect failed: " . mysqli_connect_error());
$query = "Select
`user`,
`pass`,
`email`,
`imgurl`,
`isadmin`
from
`users`
where
`user`='". mysqli_real_escape_string($mysqli, $_POST['user']) . "'";
$result = mysqli_query($mysqli, $query)
or die("MySQL-Error: " . mysqli_error($mysqli));
if (mysqli_num_rows($result))
{
$row = mysqli_fetch_assoc($result);
if (password_verify($_POST['pass'], $row['pass']))
{
$_SESSION['user'] = $row['user'];
$_SESSION['pass'] = $row['pass'];
$_SESSION['email'] = $row['email'];
$_SESSION['imgurl'] = $row['imgurl'];
$_SESSION['isadmin'] = $row['isadmin'];
if ($row['isadmin'])
{
header ("Location: url_zum_admin_bereich");
exit;
}
else
{
header ("Location: url_zum_user_bereich");
exit;
}
}
}
}
?>
Alles anzeigen
In jedem Script, dass nur für den Admin bestimmt ist, schreibst du an den Anfang:
<?php
session_start();
if (! isset($_SESSION['isadmin']) || ! $_SESSION['isadmin'])
{
header ("Location: url_zum_user_bereich_oder_login");
exit;
}
?>
Das ist natürlich alles nicht getestet, aber das Prinzip sollte klar werden.