PHP gevorderde |
|
Hallo;
Ik heb nu eindelijk een werkend adminsysteem gevonden.
<?php
error_reporting(E_ALL);
session_start();
ob_start();
$aUsers = array
(
array('finduilas','Geheim'),
array('Piet','Geheim')
);
// Array met naam en wachtwoord, dit kunnen er veel meer zijn
$iTijd = 600;
// De tijd nadat je wordt uitgelogd als je voor X aantal seconden in actief bent.
function SessieRegister($sUser,$sPass)
{
$_SESSION['aUser'] = array
(
'naam' => $sUser,
'pass' => sha1($sPass),
'tijd' => time()
);
}
function SessieUpdate()
{
global $iTijd;
if(isset($_SESSION['aUser']))
{
if($_SESSION['aUser']['tijd'] > (time()-$iTijd))
{
session_destroy();
exit;
}
else
{
$_SESSION['aUser']['tijd'] = time();
}
}
else
{
exit;
}
}
function SessieLogin($sUser,$sPass,$aUsers)
{
if(isset($_SESSION['aUser']))
{ return false; }
else
{
foreach($aUsers as $aValue)
{
if($aValue[0] == $sUser && $aValue[1] == $sPass)
{
SessieRegister($sUser,$sPass);
return true;
break;
}
else
{ return false; }
}
}
}
?>
<html>
<head>
<title>Login pagina</title>
</head>
<body>
<?php
if(isset($_SESSION['aUser']))
{
// Hier je beveiligde pagina
echo 'Ingelogd.<a href="leden.php">Ga verder</a>';
}
else
{
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if($_POST['sUser'] == '' || $_POST['sPass'] == '')
{ echo 'Je bent iets vergeten in te vullen.'; }
elseif(SessieLogin($_POST['sUser'],$_POST['sPass'],$aUsers))
{ header("Location: ".$_SERVER['PHP_SELF']); }
else
{ echo 'Wachtwoord en/of gebruikersnaam kwamen niet overeen.'; }
}
?>
<form method="post" action="<?= $_SERVER['PHP_SELF']; ?>">
<dl>
<dt>Naam:</dt>
<dd><input type="text" name="sUser" /></dd>
<dt>Wachtwoord:</dt>
<dd><input type="password" name="sPass" /></dd>
<dd><input type="submit" value=" Login " /></dd>
</dl>
</form>
<?php
}
?>
</body>
</html>
<?php ( array('finduilas','Geheim'), ); // Array met naam en wachtwoord, dit kunnen er veel meer zijn $iTijd = 600; // De tijd nadat je wordt uitgelogd als je voor X aantal seconden in actief bent. function SessieRegister($sUser,$sPass) { $_SESSION['aUser'] = array ( 'naam' => $sUser, ); } function SessieUpdate() { if(isset($_SESSION['aUser'])) { if($_SESSION['aUser']['tijd'] > (time()-$iTijd)) { } else { $_SESSION['aUser']['tijd'] = time(); } } else { } } function SessieLogin($sUser,$sPass,$aUsers) { if(isset($_SESSION['aUser'])) { return false; } else { foreach($aUsers as $aValue) { if($aValue[0] == $sUser && $aValue[1] == $sPass) { SessieRegister($sUser,$sPass); return true; break; } else { return false; } } } } ?> <html> <head> <title>Login pagina</title> </head> <body> <?php if(isset($_SESSION['aUser'])) { // Hier je beveiligde pagina echo 'Ingelogd.<a href="leden.php">Ga verder</a>'; } else { if($_SERVER['REQUEST_METHOD'] == 'POST') { if($_POST['sUser'] == '' || $_POST['sPass'] == '') { echo 'Je bent iets vergeten in te vullen.'; } elseif(SessieLogin($_POST['sUser'],$_POST['sPass'],$aUsers)) { header("Location: ".$_SERVER['PHP_SELF']); } else { echo 'Wachtwoord en/of gebruikersnaam kwamen niet overeen.'; } } ?> <form method="post" action="<?= $_SERVER['PHP_SELF']; ?>"> <dl> <dt>Naam:</dt> <dd><input type="text" name="sUser" /></dd> <dt>Wachtwoord:</dt> <dd><input type="password" name="sPass" /></dd> <dd><input type="submit" value=" Login " /></dd> </dl> </form> <?php } ?> </body> </html>
Maar hoe kan ik nu eenvoudig kijken met een script of ik op andere pagina's ben ingelogd?
|