Salve, ho creato un sistema di notifiche basato sulle sessioni utilizzando 2 funzioni:
setNotification(): che salva una variabile di sessione con il numero del messaggio di notifica
getNotification(): che recupera il messaggio di notidica da un file ini e lo stampa a schermo
Ecco il codice:
Codice PHP:
//Stampa a schermo le notifiche
public function getNotification(){
//controllo se la variabile è valorizzata
if (!empty($_SESSION['notifyMessage'])){
//Apro il file e lo salvo in un array
$lines = file(dirname(__FILE__) . '/lang/'.$this->getConfig('siteLang').'.ini');
//Salvo il tipo di messaggio ed il testo in un array passando
//come parametro il separatore # ed il numero della riga
$dat = explode("#", $lines[$_SESSION['notifyMessage']]);
$type=trim($dat[2]);
$message=$dat[1];
//Determino il titolo della finestra di notificazione
switch($type){
case "info":
$title = "Informazione!";
break;
case "error":
$title = "Errore: ";
break;
case "success":
$title = "Ok: ";
break;
case "warning":
$title = "Warning!";
break;
}
//Creo il codice HTML con la notifica
$notifyMessage = '
<div class="message '.$type.'">
[b]'.$title.'[/b]
'.$message.'
</p>
</div>
';
//Stampo a schermo il messaggio
echo $notifyMessage;
//Elimino la variabile di sessione
unset($_SESSION['notifyMessage']);
}
return;
}
//setta la variabile di sessione con il numero di notifica
public function setNotification($num){
$_SESSION['notifyMessage']=$num;
return;
}
Il file IT.ini invece è fatto in questo modo
1#messaggio#error
2#secondo messaggio#success
ecc ecc ecc..
Il problema è che quando richiamo la funzione getNotification() non mi stampa a schermo nulla.
All'inizio della pagina ho scritto session_start()
Quale può essere il problema?