riconoscere provenienza e reindirizzare

romeopasquy

Nuovo Utente
27 Dic 2011
19
0
0
Buongiorno, ho un problema, devo impedire l'accesso ad una pagina asp digitandone l'inidirizzo direttamente sulla barra degli indirizzi, l'accesso a quella pagina deve avvenire esclusivamente tramite un link posizionato in un'altra pagina. Ho un codice php per fare questo ma non so tradurlo in asp. Qualcuno mi può aiutare a tradurlo oppure suggerendomi un sistema in asp per ottenere il risultato che sto cercando?

questo è il codice php:

<html>
<?php
$proviene=basename($_SERVER['HTTP_REFERER']); //legge la provenienza
if($proviene !="paginaprovenienza.asp"){//se diverso da questa reindirizza a
header('refresh:0;url=paginaacuireindirizzzare.asp');//la pagina a cui si viene reindirizzati non provenienti dalla pagina provenienza corretta
}else{// tutto il codice html della pagina da proteggere
}
?>
</html>

grazie 1000 in anticipo.
 
Ultima modifica:
scusatemi, nel frattempo ho trovato questo

HTML:
<%@ LANGUAGE = VBScript %>
<% Option Explicit %>
<%
Dim strReferer
strReferer = Request.ServerVariables ("HTTP_REFERER")
If (Right(strReferer, N.caratteri) <> "provenienzacorretta.asp") then
Response.Redirect("paginadirimando.asp")
Else
%>
<html>

...tutto il contenuto della pagina da proteggere...

</html>
<% End If %>

ma purtroppo mi rimanda in tutti i casi alla pagina di rimando senza visualizzare mai quella da proteggere.
Qualcuno mi può dare una mano gentilmente?

grazie 1000.
 
ciao
come ti ho detto non conosco asp, ma prima di fare il redirect dovresti mettere un echo (asp???) per vedere cosa risulta esattamente in strReferer quando provieni dalla pag giusta, è quello il valore che poi devi mettere nella condizione if.
 
ah ciao, ma io adesso sto postando su asp.net non su php, non pensavo che arrivasse cmq a te..

cmq grazie, adesso provo a vedere se in asp si riesce a fare l'echo.
 
ciao
ti ho risposto perche il problema non è tanto php o asp, ma sapere cosa ti restituisce
Codice:
strReferer = Request.ServerVariables ("HTTP_REFERER")
cioè il valore della variabile strReferer da mettere nella condizione
Codice:
If (Right(strReferer, N.caratteri) <> "??????") then
credo che in asp per vedere la variabile (ma la sintassi precisa non so) sia
Codice:
Response.Write strReferer
 
Ciao e grazie per la tua risposta,

in effetti alla fine sono riuscito a trovare il corrispondente dell'echo che è ResponseWrite ma non mi restituisce niente.
facendo però l'echo in php come mi hai fatto fare l'altro giorno per l'orario mi restituisce l'indirizzo della pagina di provenienza che è quella in php che abbiamo fatto insieme che reindirizza a seconda dell'orario, ma anche mettendogli quell'indirizzo mi restituisce anche quando clicco sul link giusto la pagina dove deve essere reindirizzato chi digita dalla barra.

Forse quel codice che ho trovato su internet non è corretto oppure sto sbagliando qualcosa, ma non so cosa.
cmq non ti preoccupare, direi che tu hai già fatto abbastanza, ora vedo come fare.
grazie ancora per tutto.
 

Discussioni simili