eisdatop
Gebruiker
- Lid geworden
- 14 jul 2004
- Berichten
- 434
Hallo allemaal, ik ben nu een tijdje aan het stoeien met een loginscript.
Dit is de inlogpagina:
De config hierbij is:
Nu wil ik graag, dat op de pagina waar je binnenkomt als je ingelogd hebt, Zoiets komt te staan van: Welkom, piet!
Volgens mij moet zoiets met cookies ofzo, maar ik kom er niet helemaal uit. Weet iemand hoe het wel moet?
Alvast bedankt!:thumb:
Dit is de inlogpagina:
PHP:
<?
session_start();
Ob_start();
?>
<link rel="stylesheet" type="text/css" href="style.css">
<?
ob_start();
include("config.php");
if($_SESSION['naam'] == "" AND $_SESSION['status'] == "") {
if($_COOKIE['naam'] == "" AND $_COOKIE['wachtwoord'] == "" AND $_COOKIE['email'] == "") {
if(isset($_GET['login'])) {
if($_POST['naam'] != "" AND $_POST['wachtwoord'] != "") {
$sql = "SELECT * FROM gebruikers WHERE naam='".$_POST['naam']."'";
$resultaat = mysql_query($sql) OR die ("Kon geen verbinding maken met MySQL");
$rij = mysql_fetch_object($resultaat);
$dbpass = htmlspecialchars($rij->wachtwoord);
$status = htmlspecialchars($rij->status);
$email = htmlspecialchars($rij->email);
$actief = htmlspecialchars($rij->actief);
$pass = md5($_POST['wachtwoord']);
if($dbpass == $pass) {
if($actief == 1) {
$_SESSION['naam'] = $_POST['naam'];
$_SESSION['status'] = $status;
if($_POST['blijven'] == "1") {
setcookie("naam", $_POST['naam'], time() + 365 * 86400);
setcookie("wachtwoord", $pass, time() + 365 * 86400);
}
header("Location: $inlogp");
}else{
echo "<font color='red'><b>Je account is nog niet geactiveerd!</b><font>";
}
}else{
echo "<font color='red'><b>Je wachtwoord en/of naam is incorrect!</b></font>";
}
}else{
echo "<font color='red'><b>Je bent een veld vergeten in te vullen!</b></font>";
}
}else{ }
?>
<form method="post" action="<? echo $_SERVER['PHPSELF']; ?>?login">
<table>
<tr>
<td>Naam:</td><td><input type="text" name="naam"></td>
</tr>
<tr>
<td>Wachtwoord:</td><td><input type="password" name="wachtwoord"></td>
</tr>
<tr>
<td></td><td><input type="checkbox" name="blijven" value="1"> Ingelogd blijven</td>
</tr>
<tr>
<td></td><td><input type="submit" value="Inloggen"></td>
</tr>
</table>
<a href="wachtwoord_vergeten.php"><small>Wachtwoord vergeten?</small></a>
</form>
<?
}else{
$sql = "SELECT * FROM gebruikers WHERE naam='".$_COOKIE['naam']."'";
$resultaat = mysql_query($sql) OR die ("Kon geen verbinding maken met MySQL");
$rij = mysql_fetch_object($resultaat);
$dbnaam = htmlspecialchars($rij->naam);
$dbstatus = htmlspecialchars($rij->status);
$dbpass = htmlspecialchars($rij->wachtwoord);
$pass = $_COOKIE['wachtwoord'];
$naam = $_COOKIE['naam'];
if($dbpass == $pass AND $dbnaam == $naam) {
$_SESSION['naam'] = $dbnaam;
header("Location: $inlogp");
}else{
echo "<font color='red'><b>Eén van je cookies klopt niet met wat in de db staat!</b></font>";
}
}
}else{
?>
Je bent al ingelogd..<a href=ingelogd.php>Klik hier</a> om door te gaan
<?
}
?>
De config hierbij is:
PHP:
<?
$sitenaam = "Eisdatop.com"; //de naam van je site
$sitemail = "info@eisdatop.com"; //emailadres van je site
$inlogp = "ingelogd.php"; //pagina waar je heen moet gaan als je bent ingelogd
$actiefurl = "http://www.eisdatop.com/inloggen/activeren.php"; //de volledige link naar de pagina waar je je activatie code in kunt voeren.
$npassurl = "www.eisdatop.com/inloggen/nieuw_wacht.php"; //de volledige link naar de pagina waar je je nieuwe wachtwoord in kunt voeren.
$dbhost = "localhost"; // host van je database, bijna altijd localhost
$dbuser = "eisdatop_com"; // username voor je mysql database
$dbpass = "******"; // wachtwoord van je database
$dbname = "eisdatop_com_1"; // de database
mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);
?>
Nu wil ik graag, dat op de pagina waar je binnenkomt als je ingelogd hebt, Zoiets komt te staan van: Welkom, piet!
Volgens mij moet zoiets met cookies ofzo, maar ik kom er niet helemaal uit. Weet iemand hoe het wel moet?
Alvast bedankt!:thumb: