Se al momento del login metti un uid nel Db e
e con lo stesso valore inizializzi una variabile di sessione
la query la devi fare per forza.
A che cosa serve mettere un uid nel Db?
All'atto del login, dopo aver verificato i dati di autenticazione, e' sufficiente inserire in sessione un valore per indicare che l'utente e' autenticato (es. $_SESSION['is_logged'] = true) oppure inserire l'ID utente (es. $_SESSION['user_id'] = $row['user_id'] ) letto dal database durante la fase di verifica dei dati di autenticazione.
Nelle varie pagine è poi sufficiente inserire un codice tipo:
Codice PHP:
$_SESSION['user_id'] = isset($_SESSION['user_id']) ? $_SESSION['user_id'] : false;
if ($_SESSION['user_id'] === false) {
die('not logged'); // redirect to login form etc.
}
oppure
Codice PHP:
$_SESSION['is_logged'] = isset($_SESSION['is_logged']) ? $_SESSION['is_logged'] : false;
if ($_SESSION['is_logged'] === false) {
die('not logged'); // redirect to login form etc.
}