per gebruiker een andere pagina

Status
Niet open voor verdere reacties.

tristanb

Gebruiker
Lid geworden
21 jun 2007
Berichten
32
Beste,

Ik moet voor school een applicatie schrijven waar meerdere soorten gebruikers inzitten. Zo zijn er bijvoorbeeld Admins, gebruikers en gasten.

Nu moet het zo zijn, dat tijdens het inloggen de juiste pagina wordt aangeroepen. Dus de admins moeten de admin pagina krijgen etc.

Nu ben ik er al mee bezig geweest maar kom er niet uit, ook niet na het googlen :(

Misschien dat iemand van jullie mij verder kan helpen hiermee, hieronder staat mijn code:

PHP:
<?php 

 //Hier start de sessie
//controle of de pagina is aangeroepen
if (!empty($_POST))
{
    include("inc_connect_mysql.php");
    $query = "SELECT * FROM users WHERE username='".$_POST["username"]."'
    AND password='". md5($_POST['password'])."'";

    $result = mysql_query($query) or die("FOUT: ". mysql_error());

    if(mysql_num_rows($result)> 0 ){
    //Username is gevonden
    $username = $_POST["username"];
    $password = $_POST["password"];
    $rol = $_POST["rol"];
    session_register("username");
    session_register("password");
    session_register("rol");
    // naar beveiligde pagina gaan
    if (isset($rol["admin"]))                 # admin pagina zou aangeroepen moeten worden
    {
       header("Location:http://localhost/School/admin/Admin.php");
    }
    else{
        header("Location:login3.php");
    }
    exit();
   
    }
   
    else{
    //Geen geldige combinatie
    $tekst = "U heeft een ongeldige combinatie opgegeven.</br></br>
    Controleer uw gebruikersnaam en wachtwoord!</br></br>
    <a href=\"login.php\">Inloggen</a> of <a href=\"regist.php\">Registeren</a>.";
    die($tekst);
    }
}
else{
//Pagina niet aangeroepen
header("Location: login.php");
}

?>

Bedankt voor de hulp alvast! :thumb:

PS: Ben niet zo heel erg bekend met PHP ;)
 
Laatst bewerkt:
Om te beginnen zal je bovenaan je code de sessie ook effectief moeten starten. Enkel in commentaar schrijven 'hier start de sessie' doet niks..

Tevens vraag ik me af wat soort formulier je gebruikt om in te loggen, aangezien je kijkt of $_POST['rol']['admin'] geset is, en ik niet vertrouwd ben met het doorposten van een associatieve array (rol) binnen de $_POST-array..

Ook is het een goede gewoonte om na een header("Location: URI"); een exit te zetten, aangezien code voorbij de locatie-header niet dient uitgevoerd te worden. Dit met betrekking tot bvb spiders/crawlers die wel eens location-headers durven negeren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan