Kan iemand me helpen met een goed inlog script dat gebruik maakt van session?
Dacht dat deze manier het veiligste is voor algemeen gebruik (admin, mod, en user)
Want bij mij lukt het totaal niet.
Kan iemand me helpen met een goed inlog script dat gebruik maakt van session?
Dacht dat deze manier het veiligste is voor algemeen gebruik (admin, mod, en user)
Want bij mij lukt het totaal niet.
ultddave (23 January 2011)
Wat heb je al gemaakt?
Want een kant en klaar script ga ik niet geven daar leer je namelijk niets van.
Kunnen je wel helpen om je script goed te maken.
PHP-code:
function handleException($e) { echo $e->getMessage(); }
set_exception_handler("handleException");
throw new Exception("There is always a way");
echo "You caught me!";
ultddave (23 January 2011)
PHP-code:
<?php
//index.php
//sessie starten, in het boek stond dat dit als eerst in het script moest komen te staan.
session_start();
//Even controlleren of de gebruiker nog ingelogd is of niet.
if ( isset($_SESSION['sid']) && isset($_COOKIE['PHPSESSID']) && isset($_SESSION['logged']) && isset($_SESSION['pass']) && isset($_SESSION['nickmail'] )
{
if ( $_SESSION['sid'] == $_COOKIE['PHPSESSID'] )
{
//De gebruiker is nog ingelogd.
//Naar het profiel navigeren van deze gebruiker.
}
else
{
//Sessie id komen niet overeen, de gebruiker moet weer aanmelden.
//Al de gegevens worden vernietigd.
session_unset();
session_destroy();
setcookie("PHPSESSID", "", "time() -3600", "http://localhost/login/"); //Ik weet niet of dit goed is zo?
header("Location: index.php"); //Deze pagina vernieuwen.
}
}
if ( $_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['submit']) == 'Aanmelden' )
{
//Controlevelden, kijken of de wachtwoorden overeenkomen.
$sql = "SELECT
FROM
`usr_app`
WHERE
usr_pass = '".$_POST['aPass']."'
AND
usr_nick = '".$_POST['aNickMail']."' //Bij deze kan je ofwel een nieckname invullen of een e-mail adres.
OR
usr_email = '".$_POST['aNickMail']."'";
if ( ($result = mysql_query($sql)) === false )
{
echo 'Er ging iets fout met de query';
}
else
{
if ( mysql_num_rows($result) == 1 )
{
echo 'Ingelogd';
$_SESSION['sid'] = session_id();
$_SESSION['logged'] = true; //Een sessie maken waar staat dan er is ingelogd
$_SESSION['nickmail'] = $_POST['aNickMail']; //Een sessie maken waar de naam of de nickname in staat
$_SESSION['pass'] = $_POST['aPass']; //Een sessie maken waar het wachtwoord in geregistreerd staat
header("Location: profile.php");
}
else
{
echo 'De combinatie van de gebruikersnaam en wachtwoord komen niet overeen';
}
}
}
?>HTML-code:<br><br>Ben je nog geen lid? klik dan <a href="register.php">hier</a><br><br> <form action="" method="POST" > Vul je nickname of je email in:<br> <input type="text" name="aNickMail" /><br> Vul je passwoord in:<br> <input type="text" name="aPass" /><br> Herhaal wachtwoord:<br> <input type="text" name="bPass" /><br> <input type="submit" name="submit" value="Aanmelden" /> </form>Dit is men index pagina waar je kan op inloggen.PHP-code:
<?php
mysql_close($db);
?>
Zo had ik gedacht dat het zou kunnen werken maar blijkbaar is er meer voor nodig.
ultddave (23 January 2011)
Heb je ook de database tabel?
PHP-code:
function handleException($e) { echo $e->getMessage(); }
set_exception_handler("handleException");
throw new Exception("There is always a way");
echo "You caught me!";
ultddave (23 January 2011)
Ja, ik zal die eens geven wanneer ik weer thuis ben, sorry van de late reactie's (kan niet altijd op het internet)
ultddave ( 1 February 2011)
Zou ook wel willen weten hoe je zo'n fatsoenlijk scriptje maakt , heb het namelijk ook nodig xD
Wie de bal kaatst.......kan hem terug verwachten!
Als je mijn tip waardevol vindt - druk je op de Bedankknop.
ultddave ( 2 March 2011)
Zou je dan ook een nieuw topic willen starten met uw juiste vraag, dit is het topic van iemand anders .Zou ook wel willen weten hoe je zo'n fatsoenlijk scriptje maakt , heb het namelijk ook nodig xD
ultddave ( 2 March 2011)
Dan moet je toch wachten op input van de TS want daar wacht ik ook op.
PHP-code:
function handleException($e) { echo $e->getMessage(); }
set_exception_handler("handleException");
throw new Exception("There is always a way");
echo "You caught me!";
Stuntman Phil ( 2 March 2011), ultddave ( 2 March 2011)
Momenteel bekijken 1 gebruikers deze discussie. (0 leden en 1 gasten)
Favorieten/bladwijzers