Ik zoek een script voor een beveiligde pagina waar maar 1 persoon in kan (ik dus). Omdat ik een iplogger heb maar de gelogde ip's komen op een pagina te staan, die wil ik beveiligen.
Kijk een tussen de scripts hier. Er zal wel iets tussen staan wat je kan gebruiken. Doe eens de moeite om te zoeken.
<?php


$dbnaam = "je loginnaam";
$dbpass = "je databasewachtwoord";
$dbhost = "je host";
$dbdbdb = "je databasenaam";

mysql_connect("$dbnaam", "$dbpass", "$dbhost");
mysql_select_db("$dbdbdb");

$naam = "login";//Je loginnaam
$w8wrd = "logpas";//je loginw8woord
?>

/////////////////////
//// login.php ////
////////////////////

<?

echo"<form name='login' action='logaction.php'>
<table width='300' border='1' bordercolor='#00037e' bgcolor='#cccccc'>
<tr>
<td colspan='2' bgcolor='#00037e'><font color='#ffffff'>Log in</font></td>
</tr>
<tr>
<td>Naam:</td>
<td><input type='text' name='name' value=''></td>
</tr>
<tr>
<td>Wachtwoord</td>
<td><input type='password' name='pass' value=''></td>
</tr>
<tr>
<td> </td>
<td><input type='submit' name='log in' value='log in'> <input type='reset' name='reset' value='reset'></td>
</tr>
</table></form>";

?>

/////////////////////
//// logaction.php ////
////////////////////


<?
include("config.php");

if ($name == $leeg)
{ echo"<font color='red'>Je hebt geen naam ingevuld. Om in te loggen zul je toch echt een naam moeten invoeren, anders kom je er niet in :)</font>"; }

if ($pass == $leeg)
{ echo"<font color='red'>Je hebt geen w8woord ingevuld. Om in te loggen zul je toch echt een w8woord moeten invoeren, anders kom je er niet in :)</font>"; }

else {

if ($name == $naam && $pass == $w8wrd)

{
$query = "INSERT INTO login (lognaam, logpass) VALUES ('$name', '$pass')";

$res = mysql_query($query);

echo "<font color='green'>Je bent goed ingelogd. Klik <a href='admin.php'>hier</a> om naar de admin te gaan, of klik <a href='logout.php'>hier</a> om uit te loggen.";

}



else
{ echo"<font color='red'>Je hebt een verkeerde loginnaam of w8woord opgegeven. Wil je het opnieuw <a href='login.php'>proberen</a> of <a href='gastenboek.php'>geef je het op</a>???:D</font>"; }

}



?>

/////////////////////
//// admin.php////
////////////////////

<?
include("config.php");

$sql = "SELECT lognaam, logpass FROM login WHERE lognaam = '$naam' AND logpass = '$w8wrd'";
$res = mysql_query($sql);
$totaal = mysql_num_rows($res);
if ($totaal >0)
{

//handig om te laten staan, dan weet je zeker dat je ingelogd ben, en het wordt zeker aanbovolen
//om een linkje te maken naar logout.php
<font color'green'>Je bent goed ingelogd. Klik <a href='logout.php'>hier</a> om uit te loggen.</font><br><br>
//hier je pagina...

}

else
{
echo "<font color='red'>Je bent niet ingelogd! Wil je <a href='login.php'>dat</a> alsnog doen???:-D:-D:-D:-):-):-):-D:-D:-D</font>";
}


?>

/////////////////////
//// logout.php ////
////////////////////

<?
require("config.php");

$sql = "DELETE FROM login";

$res = mysql_query($sql);

if ($res)
{ echo"<b><font color='green'>Je bent goed uitgelogd.</font></b><br>Je kan op ieder moment weer <a href='login.php'>inloggen</a>"; }
else
{ echo"<b><font color='red>'Het is niet gelukt om uit te loggen.</font></b><br> Probeer het opnieuw."; }
?>

/////////////////////
//// mysql ////
////////////////////

CREATE TABLE login(
lognaam varchar(20) not null,
logpass varchar(20) not null
);
@ Pieter Heb ik gedaan maar ze waren allemaal toch net iets anders dan ik nodig had.

@ Iemand Bedankt!
^^ Nee.. is als het goed is mijn script, is geschreven voor 1 user.. Krijg ik heeel veel vragen over...
Of je maakt zoiets:

<?php
if (isset($_POST['login'])) {

//Database verbinding maken

$gebruikersnaam = mysql_real_escape_string($_POST['naam']);
$gebruikerswachtwoord = mysql_real_escape_string($_POST['wachtwoord']);
$gebruikerswachtwoord = md5($gebruikerswachtwoord);

$query = mysql_query("SELECT * FROM users WHERE username = ".$gebruikersnaam." AND password = ".$gebruikerswachtwoord."");

$row = mysql_fetch_assoc($Query);
$databasewachtwoord = $row['password'];

if ($databasewachtwoord == $gebruikerswachtwoord) {
$results = mysql_num_rows($query);
if ($results == '1') {
$_SESSION['Login'] = 1;
//extratje voor later gebruik bijv.
$_SESSION['gebruikersnaam'] = $row['username'];

//hier kan je een header redirect plaatsen.
}else {
echo "Je gebruikersnaam of password klopt niet!";
}
}else{
echo "Je gebruikersnaam of password klopt niet!";
}
}
?>

Later kan je dan controlleren of iemand is ingelogd dmv:

if (!$_SESSION['Login'] == '1')
{
exit;
}

Eventueel kan je dan ook de extra waarde (gebruikersnaam) ophalen voor extra gebruik.

Uitloggen kan met session_destroy();

Leuke is dat dit systeempje (beetje lossepolswerk) ook samenwerkt met de gebruikerstabel van een phpbb forum. Kunnen gebruikers met hun eigen username en wachtwoord inloggen :).
@Johan, maar je kunt het wel uitbreiden naar meerdere users.

Reageren