Continua il mio studio-epopea su uno degli articoli di freephp.it
Gli utenti di un piccolo sito hanno i permessi settati su db e un controllo all'inizio di ogni pagina verifica che il visitatore (precedentemente loggato) siamo anche in possesso dei permessi necessari per accedere alla lettura della stessa.
Ecco il codice:
codice:
if($status == AUTH_LOGGED){
$msg = "Hai i seguenti permessi:
";
foreach(license_get($user) as $perm){
$msg .= ">> ".$perm['nome']."
";
}
$msg .= (license_has($user, "news"))
? "HAI IL PERMESSO NEWS, e quindi ti é permesso eseguire questa operazione"
: "NON HAI IL PERMESSO NEWS, e quindi NON ti é permesso eseguire questa operazione";
}else $msg = '<font color="red" size="5">Non hai i diritti per visualizzare la pagina</font>';
La funzione che verifica i permessi dell'utente è questa:
codice:
function license_has($user, $perm){
$permessi = license_user_get_perms(user_get_id($user));
$perm = mysql_result(mysql_query("
SELECT id
FROM permessi
WHERE nome = '".$perm."'
"), 0 ,'id');
return intval($permessi) & intval($perm);
}
Facendo le dovute prove ho constatato che l'utente effettivamente visualizza un messaggio diverso a seconda che abbia i permessi o meno ma qui sorge un problema.
Se io preparo del codice HTML che l'utente con i dovuti permessi deve visualizzare in che punto del file lo devo inserire?
L'unico punto che mi sembrava adatto ha una struttura che non mi consente l'inserimento di codice HTML (il momento in cui $msg assume come valore una o l'altra frase.)
Come posso fare?
Se devo inserirlo li come posso aggiungere codice HTML senza incappare in un errore?