Newsgroup: it.comp.www.asp
Titolo: Server.Execute parametrizzato

salve,
io ho una cosa del tipo
generale.asp:
...
<% Server.Execute( Request("pagina") )%>
...
che puo' essere chiamata cosě
generale.asp?pagina=pagina_da_caricare.asp
ma se io volessi aprire pagina_da_caricare.asp?azione=mia_azione
ad es. ? come faccio?
generale.asp?pagina=pagina_da_caricare.asp?azione=mia_azione
nn funziona, e nemmeno
generale.asp?pagina="pagina_da_caricare.asp?azione=mia_azione"
Come posso fare??
Grazie mille!
Alan Solo

 generale.asp?pagina="pagina_da_caricare.asp?azione=mia_azione"
Se sei sicuro che pagina e' l'unico parametro della querystring, puoi fare
qualcosa del tipo:
page = Request.QueryString
qs = Right(qs,Len(qs)-InStr(qs,"="))
Server.Execute(qs)
Controlla il Right xche' non l'ho verificato (magari e' da spostare di un
carattere a destra o sinistra), ma dovrebbe funzionare...
Ciao
--
Claudio Valerio
Analista Programmatore
XXI.it S.r.l.
www.xxi.it

ma come mai? vuoi fare la execute di una pagina che al suo interno esegue a
sua volta un'altra pagina? io francamente te lo sconsiglio, cmq prova a
pacioccare con server.URLEncode magari il problema sta li!
Ciao
--
Alessandro
UGIdotNET - 
http://www.ugidotnet.org

pacioccare con server.URLEncode magari il problema sta li!
allora, innanzitutto grazie mille ad entrambi per la risposta
per spiegare la mia situazione ho un file tipo "generale.asp"
con include del titolo e del menu
alla quale poi passo la pagina da caricare "in mezzo"
io adesso vorrei avere la possibilità di caricare una pagina a sua
volta parametrizzata (è una pagina per l'autenticazione con password
contente un modulo)
in effetti lo si potrebbe evitare... facendo + pagine... pero'
chiedevo se c'era la possibilità
Claudio Valerio: grazie mille ho provato il tuo (geniale, non ci avevo
pensato :) ) suggerimento, pero' non funzion cmq :\
sembra che cio' nn sia possibile, ho cercato l'errore che mi
restituisce il server sul sito di microsoft:
--------------------------------------------------------------------------------
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q247420
 :
When you use a query string in the Server.Execute path parameter in a
hypertext markup language (HTML) page, you receive the following error
message: 
Error Type: Server object, ASP 0231 (0x80004005) 
Server.Execute Error 
Invalid URL form or fully-qualified absolute URL was used. Use
relative URLs. 
However, the Information Internet Services 5.0 (IIS) online
documentation of Windows 2000 Server says that the Server.Execute path
parameter can contain a query string. 
STATUS
Microsoft has confirmed this to be a problem in IIS 5.0 online
documentation. 
This behavior is by design. 
--------------------------------------------------------------------------------
voi che ci capite?
non è possbile usare query string anche se sul manuale dice il
contrario ? o_O
Grazie di nuovo
Alan Solo

 contrario ? o_O
A naso direi di si'...
Me sa che l'unica e' fare pagine diverse... cmq puoi mantenere l'include di
menů e titolo...
Ciao



Cosi' a naso penserei di caricare la pagina con:
generale.asp?pagina=pagina_da_caricare.asp&azione=mia_azione
e poi nella pagina generale.asp
Dim pagina_mezzo
pagina_mezzo=request.querystring("pagina")& "?azione="&
request.querystring("azione")
...
<% Server.Execute( Request("pagina_mezzo") )%>
Ho scritto di getto e non ho provato, fammi sapere.
Umby

Piu che altro da quello che so io non puoi fare due execute ricorsive.
Nel senso, se carichi una pagina pagina.asp che al suo interno ha un
server.execute("pagina2.asp") questa pagina due non potra avere al suo
interno un server.execute("pagina3.asp"), credo che vada tutto a ramengo.
Non ti dovrebbe dare errore, ma semplicemente non te lo fa fare!


 menů e titolo...
Puoi sempre mettere la query string in una variabile di sessione da
generale.asp ed usarla poi nella pagina di cui fai la execute.
Saluti
Massimo