Php sessione post login
Inviato: mar 11 ago 2009, 22:08
Salve ragazzi...
Premetto che me ne intendo poco di php e che vengo dal c++...
il mio problema è come fare per indirizzare a 3 pagine diverse dopo aver effettuato il login...
ho 3 tipi di utenti:
1) admin
2) super utente
3) utente
vorrei che se vengono iserite le credenziali dell'admin si aprisse admin.php, se quelle del super utente la sua pagina e se l'utente la sua pagina...
Ho impostato la tabella del login con questi campi
Nome utente
Password
Type (admin, super utente, utente) in questo modo posso controllorae il tipo di utente!!
Il mio file index.php è questo:
Mentre la funzione sessionReservedAreaCeck è questa:
Qualcuno sa darmi qualche dritta ragazzi??
Mi finziona solo se accedo come super utente!!!
Premetto che me ne intendo poco di php e che vengo dal c++...
il mio problema è come fare per indirizzare a 3 pagine diverse dopo aver effettuato il login...
ho 3 tipi di utenti:
1) admin
2) super utente
3) utente
vorrei che se vengono iserite le credenziali dell'admin si aprisse admin.php, se quelle del super utente la sua pagina e se l'utente la sua pagina...
Ho impostato la tabella del login con questi campi
Nome utente
Password
Type (admin, super utente, utente) in questo modo posso controllorae il tipo di utente!!
Il mio file index.php è questo:
Codice: Seleziona tutto
<form action="login.php" method="post">
<input type="hidden" name="form" value="on" >
Nome utente <input type="text" name="username"/>
Password <input type="password" name="user_password"/>
<input type="submit" value="Accesso"/>
</form>
<p>Inserisci username e password corretti per fare login.</p>
<?php
}
else { echo "Ciao ".$_SESSION['username']."!";
if ( sessionReservedAreaCheck("consulente") == true ){
header('Location: http://laboratoriomax.altervista.org/consulente.php');
}
else{
if( sessionReservedAreaCheck("admin") == true ){
header('Location: http://laboratoriomax.altervista.org/admin.php');}
else{
if ( sessionReservedAreaCheck("utente") == true ){
header('Location: http://laboratoriomax.altervista.org/utente.php');}
}
}
//HTML
?>
<p></p><a href="logout.php">Logout</a></p>
<?php } ?>
</body></html>
<?php mysql_close(); ?>Codice: Seleziona tutto
function sessionReservedAreaCheck ($userType) {
$typeQuery = "SELECT type FROM utenti WHERE username = '{$_SESSION['username']}' AND user_password = '{$_SESSION['user_password']}'";
$type = mysql_fetch_Array ( mysql_query ($typeQuery) );
if ( mysql_error() == true ) { echo "<p>".mysql_error()."</p>"; }
else {
if ( $type['type'] != $userType ) { $userType = false; session_destroy(); }
else { $userType = true; echo "Ciao ".$_SESSION['type']."!";}
}
return $userType;}Mi finziona solo se accedo come super utente!!!