Newsgroup: it.comp.www.asp
Titolo: Come recuperare una & da una QueryString?

Salve a tutti!
Ho un problema che evidentemente è semplice ma, altrettanto evidentemente,
sono poco sveglio io.
Devo sostanzialmente fare un redirect da un form ad una pagina con parametri
nel campo URL.
La pagina da raggiungere è:
    pagina.asp?id=1&r=1
e questa informazione viene inserita nelle variabili dell'URL di una pagina
che richiede il login, il cui indirizzo è:
    accesso.asp?redirect=pagina.asp&id=1&r=1
Se in accesso.asp scrivo:
    Response.Write Request.QueryString("redirect")
l'output mi dà solamente:
    pagina.asp
lasciando perdere tutto ciò che segue la prima E commerciale.
Le mie domande sono:
1) come faccio a fare in modo che
        Response.Write Request.QueryString("redirect")
    mi mostri:
        pagina.asp&id=1&r=1
    e non solo:
        pagina.asp
2) come faccio poi a modificare la stringa
        pagina.asp&id=1&r=1
    in
        pagina.asp?id=1&r=1
    (cambiando cioè "asp&" in "asp?")
Grazie
--
Giampaolo Bellavite, Milano     E-mail: 
bell...@3nd.it
ICQ: 99999936     Home page: 
http://www.3nd.it/bellavite

         pagina.asp?id=1&r=1
Replace(tuastringa,"asp&","asp?")

 Non ricordo bene...Request.QueryString() ti restituisce tutta la stringa?
Grande!! Verissimo!! Allora č fatta!
Se interessa ho risolto cosě:
<%
 Posizione = Len(Request.QueryString()) -
(instr(Request.QueryString(),"REDIRECT")) - 8
 Redirect = Right(Request.QueryString(), Posizione)
%>
Cosě da:
accesso.asp?ERRORE15=0&REDIRECT=nol.asp&r=0&id=260
mi restituisce:
nol.asp?r=0&id=260
indipendentemente da cosa ci sta prima del "redirect" =)
non sono risuscito a trovare perň una funzione Instr() che non considerasse
le maiuscole o le minuscole.


 le maiuscole o le minuscole.
Non sono afferratissimo in vbscript, pensavo però che instr NON considerasse
le maiuscole-minuscole...
porta tutto in maiuscolo(ucase(stringa)) prima di fare la ricerca

L'ultimo parametro della funzione InStr([inizio, ]stringa1, stringa2[,
confronto]) determina il tipo di confronto che può essere binario
(vbBinaryCompare) o testuale (vbTextCompare); in quest'ultimo caso non fa
differenza fra maiuscole o minuscole. Attenzione però che di default è
impostato il confronto binario.
Ciao Lorenzo

 indipendentemente da cosa ci sta prima del "redirect" =)
Scusa, ma non fai prima a scrivere:
<%
Dim pagina
pagina = Request.QueryString("redirect")
If pagina = "" Then Response.Redirect "errore.asp"
pagina = pagina & "?id=" & Request.QueryString("id") & "&r=" &
Request.QueryString("r")
Response.Redirect pagina
%>
Se a diverse pagine devi passare diversi parametri, costruisci la stringa
del redirect con un Select Case sul valore della pagina:
<%
Dim pagina, pagetogo
pagina = Request.QueryString("redirect")
Select Case pagina
 Case ""
  pagetogo = "errore.asp"
 Case "pagina1.asp"
  pagetogo = pagina & "?par1=" & Request.QueryString("par1")
 Case "pagina2.asp"
  pagetogo = pagina & "?par2=" & Request.QueryString("par2")
 Case Else
  pagetogo = "errore404.asp"
  ' eheheh
End Select
Response.Redirect pagetogo
%>
Ciao!
Massimo

 impostato il confronto binario.
Caspita! Non ci avevo pensato.
Ma il confronto testuale differisce solo in questo da quello binario?
Altrimenti, ci sono dei vantaggi ad utilizzare l'uno rispetto l'altro?


 %>
Beh, mi pare che facevo prima a scrivere le 3 righe di codice che ho fatto
io no? :-)
