Ik heb een inlog systeem gemaakt voor 1 persoon, alleen zit ergens een fout die ik niet kan oplossen.
De eerste keer dat ik op het inlog scherm kom en geef de verkeerde of geen gegevens in gaat het goed. De foutmelding klopt. Klik ik daarna op de link "terug" en dan weer op inloggen (Met de verkeerde gegevens) geeft de pagina toch weer dat ik goed ingelogd ben. Terwijl ik dus eigenlijk weer de foutmelding moet zien.
Script:
Login.php
<?
session_start();
ob_start();
include "config.php";
if(!empty($_POST)) {
$_SESSION["username"]=$_POST["username"];
$_SESSION["password"]=$_POST["password"];
if ($_SESSION["username"]!=$username || $_SESSION["password"]!=$password) {
die("Je hebt een verkeerde gebruikersnaam of wachtwoord ingevoerd!<br> <a href=\"Adminlogin.php\">Terug</a>");
session_destroy();
}else{
header("Location: Toevoegen.php");
}
}else{
?>
<html>
<body>
<form method=post action="<? echo($_SERVER["PHP_SELF"]);?>">
Gebruikersnaam: <input name=username><br>
Wachtwoord: <input name=password type=password><br>
<input type=submit value="Inloggen!">
</form>
</body>
</html>
<?
}
?>
Config.php
<?php
ob_start();
$db_host = "localhost"; // vul hier het adres van de server in
$db_login = ""; // je loginnaam
$db_pass = ""; // Je password
$db_database = "testdb"; // naam van de database
mysql_connect("$db_host", "$db_login", "$db_pass") or die("MySQL connectie mislukt.");
mysql_select_db("$db_database")or die("Selecteren van database mislukt.");
$username="Test"; // jouw gebruikersnaam
$password="Testen"; // jouw wachtwoord
?>
en de pagina die dus niet bereikbaar zou moeten zijn zonder in te loggen:
<?
session_start();
if(!isset($_SESSION["username"]) || !isset($_SESSION["password"]))
die("<h2>Je hebt niet correct ingelogd!</h2><br><a href='Adminlogin.php'>Klik hier om in te loggen</a>");
else{
?>
<html>
<head>
<title>Beveiligde pagina</title>
</head>
<body>
<h2>Welkom <? echo($_SESSION["username"]); ?>, je hebt correct ingelogd!</h2>
</body>
</html>
Ik weet zeker dat ik iets over het hoofd zie. Maar wat??
930 views