sessie ID blijft leeg

  • Beste mensen,


    ik heb een tuturial gevolgd voor maken van een login script en loop tegen het volgende aan:


    Mijn Sessie ID blijft leeg als ik het ophaal krijg ik alleen te zien:


    Array
    1
    1364413301


    Ik zie dus alleen Array staan en geen ID de onderste 2 zijn ingelogd = 1 en de tijd



    session_start wordt opgeroepen in de config die geincluded wordt


  • Heb de code iets verkleind en minder query's om aan te roepen, als het goed is zou dit zo moeten werken.

  • Alles werkt is opgelost bedankt:D


    Nog 1 ding, als ik een uitlog functie maak, dan heb ik het volgende:


    PHP
    require('includes/inc.config.php');
    if(isset($_GET['optie']) && $_GET['optie'] == 'ja')
    {
    		    	unset($_SESSION['id']);
    		    	unset($_SESSION['stime']);
    				session_destroy();
    	
    	header("Location: inloggen.php");
    	exit;
    }


    Maar de stime wordt niet leeg gemaakt die blijft achter als ik uitlog?

  • 2 mogelijkheden:
    1) de sessie van id blijft ook gestaan en je stuurt via de uitlog link niet correct de parameter optie=ja mee.
    2) op een andere plaats in je code, die je include, zet je ergens automatisch terug de sessie van stime


    Het kan niet anders dan dat unset en die session_destroy de sessie verwijderen.
    Ofwel roep je die optie ja niet aan, ofwel maak je ergens onbewust nog in je configs ofzo de sessie stime terug aan.

  • dankjewel, dit probleem is ook opgelost zit nu met het probleem dat als ik wil registreren en wachtwoord is niet ingevuld gaat hij toch door en registreerd hij toch,


    Probleem is als ik input type = password pak, werkt de error niet, en als ik input type text pak doet de error het wel


    Errorhandling:


    else if(empty($password))
    {
    echo'Vul een wachtwoord in';
    }

  • Hiervoor heb ik je registreren php code nodig ;)



    als je na de echo het volgende zet:
    exit;
    stopt hij met het verder uitvoeren van het script.


    Het type (password/text) maakt niet uit voor de verwerking van de gegevens in php.
    Heb je op je input veld wel een 'name' gezet?
    <input type=password name=password>


    Als je met een POST formulier werkt (<form method=post) dien je je variabelen aan te spreken met
    $_POST['password'] in plaats van $password

  • Raad je aan geen md5 te gebruiken, je vraagt wat persoonlijke gegevens dus bescherm hun wachtwoord goed.


    - http://www.php.net/manual/en/function.hash.php


    PHP
    <?php
    print_r(hash_algos());
    ?>


  • Toevallig ga ik binnenkort ook alle MD5 encryptie uit mijn websites halen gezien de veroudering. Maar ik had even een kleine vraag: Fils zegt hierboven "randomsalthier", alleen dan moet je die randomsalt toch weer opslaan in de DB bij de desbetreffende user dus dan is de veiligheid er toch direct weer af of zie ik dit verkeerd? Of gebruik je dan voor iedere user dezelfde hash die je alleen in de scripts gebruikt zodat die hash niet door anderen kan worden achterhaald als ze de database stelen?

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!