Ik ben dus bezig met een site en heb op het internet een login script gevonden namelijk: http://www.phpfreakz.nl/library.php?sid=3423 ik heb het iets aangepast zodat ik hem in men layout kon inwerken. Wat me ook lukte maar nu zit ik vast het inloggen werkt blijkbaar niet. Het registeren doet het want hij maakt het aan in de database en codeert het wachtwoord. Hier is mijn code:
Config.php:
PHP-code:
<?php
ob_start();
session_start();
$host = "localhost";
$username = "dbuser";
$password = "wachtwoord";
$database = "db";
mysql_connect("$host","$username","$password") or die (mysql_error());
mysql_select_db("$database") or die (mysql_error());
?>
(Heb deze gegevens er even uitgelaten voor veiligheidsredenen maar deze kloppen.)
invoegen in database:
PHP-code:
CREATE TABLE login (
id int(11) NOT NULL auto_increment,
gebruikersnaam varchar(20) NOT NULL,
wachtwoord varchar(20) NOT NULL,
email varchar(50) NOT NULL,
status varchar(20) NOT NULL,
PRIMARY KEY (id)
)
login.php:
PHP-code:
<?php
include "layout/header.php";
echo "<tr>\n";
echo "<td>\n";
include "layout/menu.php";
echo "</td>\n";
echo "<td class=\"inhoud\">\n";
echo "<!-- Begin Inhoud -->\n";
echo "<head>\n";
echo "<title>Pcstekje.be » Login</title>\n";
echo "<META NAME=\"keywords\" CONTENT=\"downloads, programma's, antispyware, antivirussen, internet downloads\">\n";
echo "<META NAME=\"description\" CONTENT=\"Hier vind je allerlei downloads (freeware, shareware). Zoals browsers, Anti virus-Spyware, ...\">\n";
echo "</head>\n";
echo "<div class=\"titel\">Login</div>\n";
echo " <br />\n";
if ($_SESSION['login'] == 1 && $_SESSION['status'] == "admin") {
echo "<B>Ingelogd:</B><BR>$_SESSION[gebruikersnaam]<BR><BR><a href='$PHP_SELF?loguit'>Loguit</a>"; // admin extra's
} elseif ($_SESSION['login'] == 1) {
echo "<B>Ingelogd:</B><BR>$_SESSION[gebruikersnaam]<BR><BR><a href='$PHP_SELF?loguit'>Loguit</a>"; // normal user
} else {
if ($_POST['login']) {
$md5_pass = md5($_POST[wachtwoord]);
$query = mysql_query("SELECT * FROM login WHERE gebruikersnaam = '$_POST[gebruikersnaam]' AND wachtwoord = '$md5_pass'");
$results = mysql_num_rows($query);
if ($results == 1) {
while ($obj = mysql_fetch_object($query)) {
$status = $obj->status;
$login = 1;
session_register("login");
session_register("status");
session_register("gebruikersnaam");
header("Location: ".$_SERVER['PHP_SELF']);
}
} else {
echo "<FONT COLOR=\"#FF0000\">Gebruikersnaam en/of<br />Wachtwoord onjuist!</FONT><BR><BR>\n";
}
}
echo "<FORM METHOD=\"post\" ACTION=\"$_SERVER[PHP_SELF]\">\n";
echo "Gebruikersnaam:<BR><INPUT TYPE=\"text\" NAME=\"gebruikersnaam\" SIZE=\"20\"><BR>\n";
echo "Wachtwoord:<BR><INPUT TYPE=\"password\" NAME=\"wachtwoord\" SIZE=\"20\"><BR><BR>\n";
echo "<INPUT TYPE=\"submit\" NAME=\"login\" VALUE=\"login\">\n";
echo "<a href=\"../../meldaan.php\" class=\"aanmelden\">Registeren</a>\n";
echo "</FORM>\n";
}
if ($_SERVER["QUERY_STRING"] == "loguit") {
session_unset();
session_destroy();
header("Location: ".$_SERVER['PHP_SELF']);
}
echo "<!-- Einde Inhoud -->\n";
echo "</td>\n";
echo "</td>\n";
include "layout/footer.php";
?>
meldaan.php:
PHP-code:
<?php
include "layout/header.php";
echo "<tr>\n";
echo "<td>\n";
include "layout/menu.php";
echo "</td>\n";
echo "<td class=\"inhoud\">\n";
?>
<!-- Begin Inhoud --><head>
<title>Pcstekje.be » Login</title>
<META NAME="keywords" CONTENT="downloads, programma's, antispyware, antivirussen, internet downloads">
<META NAME="description" CONTENT="Hier vind je allerlei downloads (freeware, shareware). Zoals browsers, Anti virus-Spyware, ...">
</head>
<div class="titel">Meld je aan</div>
<br />
<?php
if ($_SERVER["QUERY_STRING"] != "aangemeld") {
if ($_POST['meldaan']) {
if ($_POST['gebruikersnaam'] != "" && $_POST['wachtwoord'] !="" && $_POST['email'] !="") {
if ($_POST['wachtwoord'] == $_POST['wachtwoord2']) {
$query = mysql_query("SELECT * FROM login WHERE gebruikersnaam = '$_POST[gebruikersnaam]'");
if(mysql_num_rows($query) >= 1) {
echo "<FONT COLOR=\"#FF0000\">De <B>Gebruikersnaam</B> is al aangemeld!</FONT>";
} else {
if (preg_match("/(?i)^([a-z0-9._-])+@([a-z0-9.-])+\.([a-z0-9]){2,4}$/",$_POST['email'])) {
$md5_pass = md5($_POST[wachtwoord]);
mysql_query("INSERT INTO login (gebruikersnaam, wachtwoord, email) VALUES ('$_POST[gebruikersnaam]','$md5_pass','$_POST[email]')") or die (mysql_error());
header("Location: $_SERVER[PHP_SELF]?aangemeld");
} else {
echo "<FONT COLOR=\"#FF0000\">Geen juiste <B>E-mail</B> ingevuld!</FONT><BR>\n";
}
}
} else {
echo "<FONT COLOR=\"#FF0000\">De <B>Wachtwoorden</B> zijn niet hetzelfde!</FONT>";
}
} else {
echo "<FONT COLOR=\"#FF0000\">Geen <B>Gebruikersnaam</B>, <B>Wachtwoord</B> en/of <B>E-mail</B> ingevuld!</FONT>";
}
}
echo "<FORM METHOD=\"post\" ACTION=\"$_SERVER[PHP_SELF]\">\n";
echo "Gebruikersnaam:<BR><INPUT TYPE=\"text\" NAME=\"gebruikersnaam\" VALUE=\"$gebruikersnaam\"><BR><BR>\n";
echo "Wachtwoord:<BR><INPUT TYPE=\"password\" NAME=\"wachtwoord\"><BR><BR>\n";
echo "Herhaal Wachtwoord:<BR><INPUT TYPE=\"password\" NAME=\"wachtwoord2\"><BR><BR>\n";
echo "E-mail:<BR><INPUT TYPE=\"text\" NAME=\"email\"><BR><BR>\n";
echo "<INPUT TYPE=\"submit\" NAME=\"meldaan\" VALUE=\"Meld Aan\">\n";
echo "</FORM>";
} else {
echo "Okey, je profiel is aangemaakt!<BR>\n";
echo "Klik <A HREF=\"login.php\">hier</A> om te gaan inloggen.";
}
?>
<!-- Einde Inhoud -->
</td>
<?php
echo "</td>\n";
include "layout/footer.php";
?>
Ik hoop dat iemand mij kan helpen en het inloggen kan laten werken. Ik ben een beginner php en moet het dus allemaal nog leren en zie de fout niet.
Favorieten/bladwijzers