11.886 messaggi dal 09 febbraio 2002
Contributi
No, ascolta, io non ho detto che devi rimuovere la directory dappertutto. Ho detto che devi rimuoverla quando produci l'intestazione Content-Disposition, e solo in quel caso.

Questo non va bene:
Response.AddHeader "Content-Disposition", "attachment; filename=" & Request.QueryString("file")


Questo forse va bene (è da testare):
Dim frammenti
frammenti = Split(Request.QueryString("file"), "/")
Response.AddHeader "Content-Disposition", "attachment; filename=" & frammenti(UBound(frammenti))


Uso la funzione Split per spezzare il percorso in corrispondenza degli slash per poi prendere solo l'ultimo frammento, che è appunto il nome del file.
Modificato da BrightSoul il 30 agosto 2018 12.57 -

Enjoy learning and just keep making
16 messaggi dal 29 agosto 2018
Provato, ma nulla, non va. Eventualmente posso nominarti amministratore così vedi direttamente dalla piattaforma.. per fare dei tests. se vuoi puoi fornirmi la tua mail.
11.886 messaggi dal 09 febbraio 2002
Contributi
No, non mi dare nessun accesso.
La situazione è già sufficientemente chiara, l'errore era: "Response Buffer Limit Exceeded".

Le soluzioni si trovano qui, ti consiglio di provare la 3 e la 4.
https://support.microsoft.com/it-it/help/925764/error-message-when-a-web-browser-sends-a-request-for-an-active-server

In alternativa, dato che i file si trovano sotto /public, puoi evitare il problema facendo a meno di ADODB.Stream e fare un semplice redirect verso il file, che è pubblicamente accessibile.

<%@LANGUAGE = VBScript%>
<% ' Recupero il file da scaricare
Dim files

if request("tf")=1 then ' file programmazione
files="/public/itcsantagata/programmazione/" & Request.QueryString("file")
elseif request("tf")=2 then 'file programmazione sostegno
files="/public/itcsantagata/programsostegno/" & Request.QueryString("file")
elseif request("tf")=3 then 'file progetti
files="/public/itcsantagata/progetti/" & Request.QueryString("file")
elseif request("tf")=4 then 'file dip. disciplinari
files="/public/itcsantagata/dip_disciplinari/" & Request.QueryString("file")
elseif request("tf")=5 then 'file circolari
files="/public/itcsantagata/circolari/" & Request.QueryString("file")
elseif request("tf")=6 then 'file decreti
files="/public/itcsantagata/decreti/" & Request.QueryString("file")
elseif request("tf")=7 then 'file modulistica
files="/public/itcsantagata/modulistica/" & Request.QueryString("file")
elseif request("tf")=8 then 'file verbali cons
files="/public/itcsantagata/verbcons/" & Request.QueryString("file")
elseif request("tf")=9 then 'file curriculum
files="/public/itcsantagata/curriculum/" & Request.QueryString("file")
elseif request("tf")=10 then 'file musica mp3
files="/public/itcsantagata/coro/" & Request.QueryString("file")
elseif request("tf")=11 then 'file formclero
files="/public/itcsantagata/formclero/" & Request.QueryString("file")
elseif request("tf")=12 then 'file ufficio liturgico
files="/public/itcsantagata/ufflitur/" & Request.QueryString("file")
end if

Response.Redirect(files)

%>



ciao,
Moreno
Modificato da BrightSoul il 30 agosto 2018 16.16 -

Enjoy learning and just keep making
16 messaggi dal 29 agosto 2018
adesso funziona.. ho utilizzato l'ultimo codice che mi hai inviato. grazie :D
16 messaggi dal 29 agosto 2018
diciamo che adesso si pone un altra questione.. perchè non li scarica come prima ma li apre nel browser
11.886 messaggi dal 09 febbraio 2002
Contributi
Ora non li scarica Il browser è in grado di visualizzare inline alcuni tipi di contenuto, come i PDF, e perché manca l'intestazione Content-Disposition: attachment che serve a forzare il download.

Una soluzione veloce consiste nell'aggiungere l'attributo download al link da cui scarichi il file.
Esempio:
<a href="http://..." download>Clicca qui per scaricare il file</a>

Così il file verrà scaricato anziché essere aperto nel browser.

Questo è il supporto dei vari browser a tale attributo.
https://caniuse.com/#feat=download

ciao,
Moreno

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.