Ciao a tutti

visto il grande aiuto che ogni volta sapete darmi vi posto un'altra mia richiesta:

ho predisposto un'area ad accesso riservato che utilizza i cookie fatta più o meno così:

Preparo il modulo per l'accesso all'area riservata.

modulo di login.htm
-----------------
Codice PHP:
 <form method="POST" action="redirect.php">
Password <input type="password" name="password">
<
input type="submit" value="Login">
</
form

Verifico i dati passati dal modulo e se ok setto un cookie le computer dell'utente con il nome TEST e gli assegno il valore "ok" e scadenza a 1 anno dalla data di oggi.

redirect.php
------------------
Codice PHP:
 <?php
// verifico username e password e se ok...
$password $_POST["password"];
if (
$password <> 'pizza87') {
echo 
"Non sei autorizzato ad entrare in quest'area";
} else {
setcookie("TEST""ok"time() + 60 *15);
header("Location: [url]http://miosito.org/welcome.php[/url]");
}
?>
Recupero il cookie precedentemente memorizzato nel computer dell'utente e controllo che sia presente ossia se il browser dell'utemte accetta i cookie oppure no.

welcome.php
-----------------

Codice PHP:
 <?php
if (!isset($_COOKIE["TEST"])) { 
 echo 
"Non accetti i cookie. Per entrare devi abilitare il browser ad accettare i cookie"
} else { 
echo 
"Mostro la pagina di ingresso";

?>
così tutto pare funzionare, l'unica cosa che non mi piace è che se un utente "malintenzionato" digita direttamente il link alla pagina protetta welcome.php il programmino non lo lascia entrare (dato che nn trova i cookie) ma gli risponde " "Non accetti i cookie. Per entrare devi abilitare il browser ad accettare i cookie".

in questi casi preferirei mostrare il messaggio "non sei autorizzato ad entrare in questa area"..

Per farlo ho inserito allora in welcome.php una verifica della pagina di proveninza:
se si proviene da login.php va tutto bene altrimenti non si entra ricevendo il messaggio: "non sei autorizzato ad entrare in questa area".

il codice sarebbe questo:

Codice PHP:
 <?php
$provenienza 
$_SERVER["HTTP_REFERER"];
if (
$provenienza ==  "http://miosito.org//login.php")  {

if (!isset(
$_COOKIE["TEST"])) { 
 echo 
"Non accetti i cookie. Per entrare devi abilitare il browser ad accettare i cookie"
} else { 
echoo "Mostro la pagina di ingresso"; } 

}

else {
echo 
"<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

<div align='center'>Torna alla pagina di <a href=login.php>login</a></div>"
;
}
?>
Così facendo però se un navigatore, effettua l'accesso, visita la pagina protetta e poi esce e rientra passando da un'altra pagina del mio sito diversa da LOGIN.php non può più entrare anche se il cookie è ancora valido..

Insomma..

è possibile settare

Codice PHP:
$provenienza $_SERVER["HTTP_REFERER"];
if (
$provenienza ==  "http://miosito.org/Php/Guild/login.php"
modificando la condizione if in modo che riconosca la provenienza da una QUALUNQUE delle pagine del mio sito e NON SOLTANTO DA UNA pagina??

Grazie mille a tutti per la pazienza...