Ik Zit al enige tijd met dit script te rotzooien, maar ik krijg het niet voor elkaar om na het inloggen de juiste (user_id) te krijgen op (show_user.php). Het inloggen lukt wel anders zou je niet door gelinkt worden naar (show_user.php) maar niet met het juiste (user_id) je komt namelijk op een pagina terecht zonder info van die desbetreffende (user). Heeft dit met de session te maken of de link in de header ? Dus mijn vraag is weet iemand toevallig een how to of topic waar dit probleem uitgelegd word? of ziet iemand toevallig gelijk wat ik fout doe ? Alles staat online op http://163.158.253.94/cms en uiteraard het encrypte van de wachtwoorden komt als dit script werkt. Bedankt voor jullie tijd ! (hieronder het login script)


<?php
require_once 'scripts/connect.php';
require_once 'scripts/app_config.php';

if (!session_is_registered('user_id') || !session_is_registered('username'))
{
	// user is not logged in.
    if (isset($_POST['cmdlogin']))
    {
        // retrieve the username and password sent from login form
        // First we remove all HTML-tags and PHP-tags, then we create a md5-hash
        // This step will make sure the script is not vurnable to sql injections.
        
        $u = strip_tags($_POST['username']);
        $p = strip_tags($_POST['password']);
        //Now let us look for the user in the database.
        $query = sprintf("SELECT user_id, username FROM users WHERE username = '$u' AND password = '$p' LIMIT 1;",
            mysql_real_escape_string($u), mysql_real_escape_string($p));
        $result = mysql_query($query);
        // If the database returns a 0 as result we know the login information is incorrect.
        // If the database returns a 1 as result we know  the login was correct and we proceed.
        // If the database returns a result > 1 there are multple users
        // with the same username and password, so the login will fail.
        if (mysql_num_rows($result) != 1)
        {
            // invalid login information
            echo "Wrong username or password!";
            //show the loginform again.
            include "index.php";
        } else {
            // Login was successfull
            $row = mysql_fetch_array($result);
            // Save the user ID for use later
            $_SESSION['user_id'] = $row['user_id'];
              // Save the username for use later
            $_SESSION['username'] = $u;
              // Now we show the user
            header("Location:show_user.php");
        }
		
    } else {
    	 // User is not logged in and has not pressed the login button
    	 // so we show him the loginform
        include "signup.php";
    }
 
} else {
	 // The user is already loggedin, so we show the user
    include "show_user.php";
}
?>
Dat is allemaal gefixt in het nieuwe login script :D

Reageren