webForumDet fria alternativet

Redirect efter redirecten?

7 svar · 240 visningar · startad av bigsky

bigskyMedlem sedan maj 2002821 inlägg
#1

I en download räknare som jag har, skickas man vidare till filen när man klickar på en länk som går till sidan som räknar antalet nerladdningar (satan vilken mening, jaja). Men då när man laddat ner filen så visas bara en vit sida, detta eftersom den förra länken pekade på en zip fil. Hur ska jag göra om jag vill ha två Response.Redirect efter varandra? Alltså den första till filen, och sedan en tillbaka till sidan man kom från..?

@ndersMedlem sedan juni 200032 969 inlägg
#2

Du får använda javascript för att kasta upp zip-filen till ett nytt fönster, därefter göra redirect i huvudfönstret, lämpligen med javascript också där. ;)

Något sånt här borde räcka:

<script>
window.open('<%=strFileName%>');
location.href='annanfil.asp';
</script>

Mvh,

PeeerMedlem sedan mars 20025 907 inlägg
#3

Du ska nog köra på @nders lösning, men här kommer ett till förslag!

listafiler.asp (den med länkar och skit):

<html>
<body>
<a href="count.asp?downloadid=15">Ladda ner fil 15</a>
<%
if request.querystring("download") ="yes" then
fil = request.querystring("fil")
Response.redirect fil
end if
%>
</body>
</html>

count.asp (filen som räknar antalet hitz):

<%
kod som räknar antalet träffar
...
fil = "fil-15.zip"
Response.redirect "listafiler.asp?download=yes&fil" & fil
%>

Kanske skulle tilläga att jag inte har en aning om den funkar, men tycker att den borde göra det! :D

webzonenMedlem sedan feb. 2001390 inlägg
#4

följdfråga: den metoden du hänvisar till, @nders, den fungerar väll inte om man har en "pop-up" killer?
förresten, denna länk kanske kan hjälpa dig :q

http://www.asp101.com/samples/download_sample.asp

PeeerMedlem sedan mars 20025 907 inlägg
#5

Ojdå....min funkar visst inte så bra. Skit i den helt enkelt! :r

webzonenMedlem sedan feb. 2001390 inlägg
#6
Response.redirect "listafiler.asp?download=yes&fil[b]=[/b]" & fil
PeeerMedlem sedan mars 20025 907 inlägg
#7

Den här funkar nog bättre!
listafiler.asp

<html>
<head>
<% if request.querystring("download") = "yes" then
fil = request.querystring("fil")%>

<SCRIPT LANGUAGE="JavaScript">
<!--
meta_time=500
//Ovanstående rad gör så att scriptet väntar 0,5s innan filen laddas (för att hela sidan ska hinna laddas in innan scriptet körs)
page="<%=fil%>"
function meta()
{
self.location=page
}
setTimeout("meta()",meta_time)
//-->
</SCRIPT>
<% end if%>
</head>
<body bgcolor="#C2C287" text="#000000" id="all" leftmargin="10" topmargin="10" marginwidth="10" marginheight="10" link="#660000" vlink="#660000" alink="#660000">
<a href="count.asp?fil=15">Ladda ner fil 15</a>
bla bla bla
</body></html>

count.asp

<%
kod som räknar antalet träffar
...
fil = "fil-15.zip"
Response.redirect "listafiler.asp?download=yes&fil=" & fil
%>
webzonenMedlem sedan feb. 2001390 inlägg
#8

och glöm inte Response.Buffer=TRUE på count.asp

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)