15 messaggi dal 15 settembre 2017
Salve a tutti

ho un file http://www.corritrentino.info/podi_dei_nostri_tesserati.asp

in esso se scrivo

<%
Server.Execute("podi_conta_anno.asp")
%>

funziona tutto perfettamente
ma se provo a parametrizzare con

<%
Server.Execute("podi_conta_anno.asp?anno=2019")
%>

mi da l'errore

Server object error 'ASP 0173 : 80004005'

Invalid Path Character

/podi_dei_nostri_tesserati.asp, line 14

An invalid character was specified in the Path parameter for the MapPath method.

eppure http://www.corritrentino.info/podi_conta_anno.asp?anno=2019
funziona correttamente

Come posso fare?

Grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Michele,
quando usi Server.Execute, non si verifica una nuova richiesta HTTP e quindi non puoi passare variabili query string.
L'argomento che passi al Server.Execute è il percorso relativo di un file che ASP cercherà nel disco locale.
Di conseguenza, fai così:
Server.Execute("podi_conta_anno.asp")


E poi, nel file podi_conta_anno.asp recuperi l'anno così:
anno = Request.QueryString("anno")

Lo puoi fare perché il file podi_conta_anno.asp viene eseguito nel contesto della stessa richiesta HTTP.

ciao,
Moreno

Enjoy learning and just keep making
15 messaggi dal 15 settembre 2017
Grazie per la risposta

in realtà è già come mi consigli

in podi_dei_nostri_tesserati.asp
c'è il comando
-> Server.Execute("podi_conta_anno.asp")

in podi_conta_anno.asp
c'è già
-> Request.QueryString("Anno")

ma dove indico il valore di "Anno"?

che prima sarà 2019, poi 2018...

come detto se uso Request.QueryString("Anno")
devo passare "Anno" come parametro
ma non si riesce..
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Michele


devo passare "Anno" come parametro

Lo passi via querystring nella tua richiesta.
http://www.corritrentino.info/podi_dei_nostri_tesserati.asp?Anno=2019

Oppure, se possibile, non usare Server.Execute ma fai un normale include. All'interno del file incluso, definisci una funzione che accetti l'anno come parametro.

http://www.csidata.com/custserv/onlinehelp/vbsdocs/vbs14.htm

ciao,
Moreno

Enjoy learning and just keep making
15 messaggi dal 15 settembre 2017
Grazie ma ritorno da capo

inserendo la parametrizzazione viene visualizzato l'errore
<%
Server.Execute("http://www.corritrentino.info/podi_dei_nostri_tesserati.asp?Anno=2019")
%>
o
<%
Server.Execute("podi_dei_nostri_tesserati.asp?Anno=2019")
%>
stessa cosa con
<!--#include file="http://www.corritrentino.info/podi_dei_nostri_tesserati.asp?Anno=2019"-->
o
<!--#include file="podi_dei_nostri_tesserati.asp?Anno=2019"-->



Server object error 'ASP 0173 : 80004005'
Invalid Path Character
/podi_dei_nostri_tesserati.asp, line 18
An invalid character was specified in the Path parameter for the MapPath method.
11.886 messaggi dal 09 febbraio 2002
Contributi
Come dicevo prima, non puoi mettere ?Anno=2019 nel percorso che passi al Server.Execute o all'include. Quelli sono percorsi di file presenti su disco, non richieste web.

Questo è sbagliato.

Server.Execute("http://www.corritrentino.info/podi_dei_nostri_tesserati.asp?Anno=2019")


Prova così:

Server.Execute("podi_conta_anno.asp")


E poi fai una richiesta web passando Anno=2019. Vuol dire che devi aprire il tuo browser e nella barra degli indirizzi digitare
http://www.corritrentino.info/podi_dei_nostri_tesserati.asp?Anno=2019


ciao,
Moreno
Modificato da BrightSoul il 17 ottobre 2019 12:37 -

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.