|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Vallerona (GR)
Messaggi: 711
|
[PHP] Impostare provenienza (referer?) obbligatorio
salve a tutti e grazie preventivamente dell'aiuto
non riesco a fare questa cosa: ho un forum (in vbulletin) e desidererei che la gente potesse accedervi unicamente cliccando sull'apposito link dalla home page, e non direttamente dall'indirizzo o dal bookmark del forum stesso immagino sia una questione di referer...ho googlato un bel po' ma non sono riuscito a venire a capo della questione c'è modo per impostare questa "provenienza obbligatoria"? grazie di nuovo |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2007
Città: Verona
Messaggi: 1060
|
Si usa la variabile superglobale del server, che contiene le informazioni http:
Codice:
$home = "http://{$_SERVER[SERVER_NAME]}/index.php" //attento devi mettere anche il nome del file, di solito index.html o index.php
if ( $_SERVER["HTTP_REFERER"]!==$home ) {
faiQualcosaDiFastidioso();
}
Se lo sai già e non lo vuoi cambiare mettilo in chiaro, es $home = 'http://www.tuosito.com/index.php';
__________________
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Attenzione che $_SERVER[SERVER_NAME] non è sempre valorizzata.
Ti conviene scrivere l'url in chiaro. In ogni caso dovresti estrapolare la parte relativa al nome del server da $_SERVER["HTTP_REFERER"], altrimenti il controllo risulta soddisfatto solo se provieni dalla pagina index.php. Al limite può anche andare bene così, ma dovresti mettere un flag nella sessione che ti indica che sei già passato dalla home page del sito e non effettua nuovamente il controllo. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Vallerona (GR)
Messaggi: 711
|
dunque, intanto vi ringrazio moltissimo
non c'ho capito un granchè ma prima di stressare voi di nuovo faccio delle prove, magari ne cavo qualcosa grazie ancora! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:25.



















