Ben volentieri! Ecco lo script modificato (neanche tanto per la verità, ma ora funziona ). Mi raccomando se fai modifiche degne di nota fammi sapere: mi interesserebbe sicuramente.
Come puoi vedere, al momento, valgono le seguenti coppie user/password: amministratore-amministratore e utente-password.
Ciao
Codice PHP:
<?php
$utenti = array ('amministratore'=>'amministratore', 'utente'=>'password');
if ( isset ($_POST['utente']) && isset($_POST['codice']) ) {
//CONTROLLO SE ESISTONO DATI PROVENIENTI DAL FORM
if ( controllaAccesso ($_POST['utente'], $_POST['codice'], $utenti) ) {
$_SESSION['utente'] = $_POST['utente'];
$_SESSION['codice'] = $_POST['codice'];
}
elseif ( !controllaAccesso ($_POST['utente'], $_POST['codice'], $utenti) ) {
$segnalazione = "</span>Nome utente e/o codice d'accesso errati!</span>
";
visualizzaFormAccesso ( $segnalazione );
exit;
}
}
elseif ( isset ($_SESSION['utente']) && isset($_SESSION['codice']) ) {
//CONTROLLO SE ESISTONO DATI MEMORIZZATI IN SESSIONE
if ( !controllaAccesso ($_SESSION['utente'], $_SESSION['codice'], $utenti) ) {
$segnalazione = "</span>Nome utente e/o codice di sessione errati!</span>
";
visualizzaFormAccesso ( $segnalazione );
exit;
}
}
else {
//ALTRIMENTI VISUALIZZA IL FORM
visualizzaFormAccesso ();
exit;
}
function controllaAccesso ($utente, $codice, $utenti) {
foreach ($utenti as $chiave=>$valore) {
if ($chiave == $utente && $valore == $codice) {
return true;
}
}
return false;
}
function visualizzaFormAccesso ( $segnalazione = "" ) {
echo "
<form method=\"post\">
<label for=\"utente\">Nome utente</label>
<input type=\"text\" id=\"utente\" name=\"utente\" />
<label for=\"codice\">Codice</label>
<input type=\"password\" id=\"codice\" name=\"codice\" />
</p>
";
if ( $segnalazione != "" ) { echo $segnalazione; }
echo "
<input type=\"submit\" value=\"Invia\" />
<input type=\"hidden\" name=\"camponascosto\" />
</p>
</form>
";
}
?>