Hallo Helpmji-ers,
Ik wil een inlogsysteem maken als onderdeel van een intranet dat ik aan het bouwen ben. Mijn kennis van PHP is redelijk dat ik dit met behulp van het internet best ver kom, maar nu loop ik even vast.
Onderstaande code ontvangt vanaf de inlogpagina de inloggegevens en valideert deze in de database. het wachtwoord is met md5 versleuteld. Echter lijkt het script niet uitgevoerd te worden. Ik zie geen foutmeldingen, ik wordt niet doorverwezen naar de doelpagina en zie ook geen andere meldingen. Kortom, het lijkt er op dat het script niet eens wordt uitgevoerd.
Dit is login.php, het script dat de inlogcodes valideert
Dit script gebruikt db.inc.php (waar de databasegegevens in staan) en verwijdt door naar hoofdmenu.php. Allen in de zelfde map.
Ik hoor graag wat ik hier fout doe.
Bij voorbaat dank!
Jochem
[edit]Kan het zijn dat er aan de serverkant iets mis gaat? Dit stuk code komt namelijk letterlijk uit een tutorial in een PHP-boek.[/edit]
Ik wil een inlogsysteem maken als onderdeel van een intranet dat ik aan het bouwen ben. Mijn kennis van PHP is redelijk dat ik dit met behulp van het internet best ver kom, maar nu loop ik even vast.
Onderstaande code ontvangt vanaf de inlogpagina de inloggegevens en valideert deze in de database. het wachtwoord is met md5 versleuteld. Echter lijkt het script niet uitgevoerd te worden. Ik zie geen foutmeldingen, ik wordt niet doorverwezen naar de doelpagina en zie ook geen andere meldingen. Kortom, het lijkt er op dat het script niet eens wordt uitgevoerd.
Dit is login.php, het script dat de inlogcodes valideert
PHP:
<title>Valideren...</title>
<?php
session_start();
switch (@$_POST['Button'])
{
case "Log in";
include("db.inc.php");
$cxn = mysqli_connect($host,$user,$pass,$db)
or die("Fout opgetreden bij het maken van de databaseverbinding");
$sql = "SELECT username FROM Gebruikers
WHERE username='$_POST[username]'" ;
$result = mysqli_query($cxn,$sql)
or die("Gebruikersnaam niet gevonden");
$num = mysqli_nuw_rows($result);
if($num > 0) //gebruikersnaam gevonden
{
$sql = "SELECT username from Gebruikers
WHERE username='$_POST[username]'
AND password=md5('$_POST[password]')";
$result2 = mysqli_query($cxn,$sql)
or die("Password incorrect");
$num2 = mysqli_num_rows($result2);
if($num2 > 0) //wachtwoord is correct
{
$_SESSION['auth']="yes";
$_SESSION['logname'] = $_POST['username'];
$sql = "INSERT INTO Login (loginName,loginTime)
VALUES ('$_SESSION[logname]',NOW())";
$result = mysqli_query($cxn,$sql)
or die("Fout bij aanmaken van de sessie");
header("Location: hoofdmenu.php");
}
else // wachtwoord is onjuist
{
$message_1="De gebruiker, '$_POST[username]' bestaat, maar het wachtwoord is onjuist. Probeer opnieuw.";
$username=strip_tags(trim($_POST['username']));
}
}
else // loginnaam niet gevonden
{
$message_1 = "De gebruikersnaam bestaat niet!";
}
}
?>
Dit script gebruikt db.inc.php (waar de databasegegevens in staan) en verwijdt door naar hoofdmenu.php. Allen in de zelfde map.
Ik hoor graag wat ik hier fout doe.
Bij voorbaat dank!
Jochem
[edit]Kan het zijn dat er aan de serverkant iets mis gaat? Dit stuk code komt namelijk letterlijk uit een tutorial in een PHP-boek.[/edit]
Laatst bewerkt: