LateNight Coding

  • Increase font size
  • Default font size
  • Decrease font size
Home Domande Frequenti Sviluppatori Come posso ottenere informazioni sull'utente della sessione corrente?

Come posso ottenere informazioni sull'utente della sessione corrente?

Per determinare se esiste un utente che ha effettuato il login ed ottenere informazioni quali il nome, il tipo utente o l'indirizzo e-mail con cui si è registrato al sito è necessario ottenere un riferimento all'oggetto utente globale (un'istanza della classe JUser definita nel framework di Joomla!) ed accedere alle sue proprietà.

  • id - contenuto del campo ID nella tabella users.
  • username - nome utente utilizzato per la registrazione al sito.
  • name - nome personale.
  • email
  • usertype - una stringa contenente uno dei seguenti valori: Registered, Author, Editor, Publisher, Manager, Administrator, Super Administrator.
  • guest - questa proprietà vale True se l'utente corrente sta visualizzando il sito come ospite (id è 0 (zero) e tutte le altre proprietà empty). Il valore è False se l'utente corrente ha effettuato il login.

Vediamo il codice

$user =& JFactory::getUser();
echo $user->id;
echo $user->username;
echo $user->name;
echo $user->email;
echo $user->usertype;
echo $user->guest;

Questo codice funziona nei componenti, moduli (quelli installabili non i moduli di tipo HTML personalizzato che si creano dalla Gestione moduli nell'area di amministrazione) e template.

Per esempio includendo le righe di codice seguenti in index.php del template è possibile mostrare un'informazione solo agli utenti ospiti o solo a quelli che hanno effettuato il login.

$user =& JFactory::getUser();
if($user->guest) {
echo 'solo utenti ospiti vedranno questo';
} else {
echo 'solo utenti che hanno fatto il login vedranno questo';
}
 
English Italiano
Supporta lo sviluppo dei nostri prodotti open source.

Mootools

GNU GPL License Version 3

120x60c