Controllo credenziali

Boscagoo

Nuovo Utente
5 Nov 2012
11
0
1
Salve, sto facendo un piccolo progetto con un login (per non farlo vedere a persone indesiderate). L'index del mio sito presenta un form di login, con username e password da inserire (fatto con php). Sostanzialmente gli utenti sono 2: un Admin e un Guest.
Questo login funziona perfettamente...solo che ho due problemi, e non riesco a venirne fuori:
1)devo limitare la visualizzazione agli utenti ospiti solo a determinate pagine, mentre l'amministratore può visitare qualsiasi pagina. Come faccio a tenere conto per ogni pagina chi è amministratore e chi no?
2)se qualcuno salta il passaggio di login, andando direttamente ad un'altra pagina del progetto, può visitare tutte le pagine: posso semplicemente cavarmela con una clausola insieme al punto sopra oppure c'è una fuzione/istruzione che mi permette di farlo?
Grazie per l'aiuto

M.
 
ciao
immagino che tu abbia una tabella utenti, se si aggiungi un campo chiamato es autorizzato tipo es enum con 0 e 1
dove 1 è l'admim e 0 tutti gli altri
quando fai il log prelevi e passi in sessione anche il valore del campo
nelle pagine riservate all'admin
PHP:
<?php
session_start();
if(!isset($_SESSION['username'])){//non so se passi l'user o qualcos'altro
	//utente non loggato
	//rimandi dove vuoi con l'header location
	exit();
}else{
	if($_SESSION['autorizzato'] != "1"){
		//utente non admin
		//rimandi dove vuoi con l'header location
		//oppure quello che gli utenti possono vedere allora senza exit
		exit();
	}
	//e qui tutto quello per il solo admin
}
?>
nelle pagine per gli altri utenti non metti l'if
 

Discussioni simili