88 lines
1.9 KiB
PHP
88 lines
1.9 KiB
PHP
<?php
|
|
include '../common.php';
|
|
// Bruker database-tilkobling fra forrige modul
|
|
include '../modul6/forberedelser.php';
|
|
include "Auth.inc.php";
|
|
|
|
$msg = array();
|
|
$err = array();
|
|
|
|
|
|
// se om bruker-tabellen finnes
|
|
|
|
try {
|
|
$db = getPdoConn();
|
|
$stmt = $db->prepare("SELECT count(0) FROM Bruker;");
|
|
$stmt->execute();
|
|
$result = $stmt->fetchAll();
|
|
}
|
|
catch (PDOException $e){
|
|
if($e->getCode() == "42S02"){
|
|
echo "Tabellen finnes ikke. <form method='post'><input type='submit' name='lagBrukerTabell' value='Lage den?'></form>";
|
|
}
|
|
else {
|
|
echo "SQL-feil: <br>\n".var_dump($e);
|
|
}
|
|
}
|
|
|
|
|
|
if(Auth::checkLogin()){
|
|
$msg[] = "Du er allerede logget inn.";
|
|
}
|
|
|
|
if(!empty($_POST)){
|
|
try {
|
|
Auth::doLogin($_POST['brukernavn'], $_POST['passord']);
|
|
header("Location: Hjem.php");
|
|
}
|
|
catch (LoginException $e){
|
|
$err[] = $e->getMessage();
|
|
}
|
|
}
|
|
?><!DOCTYPE html>
|
|
<html lang="no">
|
|
<head>
|
|
<title><?=title();?></title>
|
|
<link rel="stylesheet" href="../index.css">
|
|
</head>
|
|
<body>
|
|
|
|
<div class="container">
|
|
<h1>Modul 7 - Autentisering</h1>
|
|
<h4><?=getNavigation();?></h4>
|
|
<h2>Login</h2>
|
|
|
|
<?php
|
|
// Her skriver vi ut feilmeldinger eller suksess-meldinger som er generert. Dette for å få et finere brukergrensesnitt.
|
|
|
|
if(!empty($err)){
|
|
foreach ($err as $e){
|
|
echo "<p class='error'>".$e."</p>\n";
|
|
}
|
|
}
|
|
|
|
if(!empty($msg)){
|
|
foreach ($msg as $m){
|
|
echo "<p class='suksess'>".$m."</p>\n";
|
|
}
|
|
}
|
|
|
|
?>
|
|
|
|
<form method="post">
|
|
<p>
|
|
<label for="brukernavn">Brukernavn:</label>
|
|
<input type="text" id="brukernavn" name="brukernavn">
|
|
</p>
|
|
<p>
|
|
<label for="passord">Passord:</label>
|
|
<input type="password" id="passord" name="passord">
|
|
</p>
|
|
<p>
|
|
<input type="submit" value="Logg inn...">
|
|
</p>
|
|
</form>
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|