back to top

L’oggetto Request di Classic ASP

L’oggetto built-in Request permette di recuperare degli input da parte dell’utente o di recuperare particolari variabili del server, dette d’ambiente.

Iniziamo a vedere com’è possibile recuperare dati attraverso l’invio di un modulo HTML. L’invio di dati attraverso un form prevede i metodi GET e POST che presuppongono un metodo di recupero differente:

Metodo di invioMetodo di recupero
GETRequest.QueryString
POSTRequest.Form

Create nella directory di prova sul vostro server Web personale la cartella form in cui inserire il file scrivi.html in cui inserire il seguente codice:

<html>
<head>
<title>La mia prima pagina ASP</title>
</head>
<body>

<form method="GET" action="recupera_get.asp">
Nome<br>
<input type="text" name="nome"><br>
Cognome<br>
<input type="text" name="cognome"><br>
</form>

</body>
</html>

Il metodo GET è di default se non specificato nel Tag <form> ma è bene specificarlo. Vediamo che l’action punta al file recupera_get.asp in cui inseriamo il seguente codice:

<%@LANGUAGE = VBScript%>
<%
Dim nome, cognome
nome = Request.QueryString("nome")
cognome = Request.QueryString("cognome")
%>
<html>
<head>
<title>Utilizzo delle SSI</title>
</head>
<body>

Piacere, mi chiamo <%=nome%> ed il mio cognome è <%=cognome%>

</body>
</html>

Per utilizzare il metodo POST sarà sufficiente modificare questa riga nel file HTML

<form method="POST" action="recupera_post.asp">

Fare copia e incolla del file ASP e rinominarlo come recupera_post.asp e modificare solo queste due righe di codice:

nome = Request.<strong>Form</strong>("nome")
cognome = Request.<strong>Form</strong>("cognome")

In sostanza la differenza tra i metodi GET e POST nell’invio dei dati è che con GET è possibile recuperarli direttamente dalla barra degli indirizzi del browser mentre con POST i dati non vengono messi in chiaro; in definitiva il POST è più sicuro del GET.

Proviamo adesso a recuperare i dati con GET senza l’utilizzo di un modulo HTML. Si crei nella cartella form il file link_get.html e si inserisca il seguente collegamento ipertestuale che punta al file recupera_get.asp che abbiamo già creato e che NON dobbiamo modificare:

<a href="recupera_get.asp?nome=Luca&cognome=Ruggiero">VAI</a>

La QueryString viene creata con un carattere punto interrogativo (?) come associazione del primo parametro e con una E commerciale (&) per associare tutti gli altri parametri.

Affrontiamo adesso un altro importante utilizzo dell’oggetto Request, ovvero la possibilità di recuperare variabili d’ambiente legate in qualche modo al server Web, ad esempio l’indirizzo IP del visitatore. Utilizziamo la collezione ServerVariables() passando tra parentesi la chiave che intendiamo utilizzare al nostro scopo.

Creiamo il file ip.asp e salviamolo nel nostro server Web personale e copiamo il seguente codice:

<%@LANGUAGE = VBScript%>
<%
Dim ip
ip = Request.ServerVariables("REMOTE_ADDR")
Response.Write "Il tuo <a href="/reti/indirizzo-ip_12819.html">indirizzo IP</a> è " & ip
%>

Request.ServerVariables() mette a disposizione diverse chiavi per il recupero delle variabili d’ambiente del server Web, ma non è questo il momento di approfondire il discorso: per adesso pensate a capire i meccanismi di funzionamento basilari.

Altri metodi e collezioni degli oggetti Response e Request saranno trattati in una versione avanzata della guida o su MRW Corsi, il nostro sistema di E-Learning.

Pubblicitร