Du kan ju spara det i en QueryString. Eller så kan du göra det till ett formulär och lägga till typ OnClick="this.form.Submit()" om du vill att det ska hämtas med Request.Form().
Har kanske förstått ditt meddelande fel.
5 svar · 233 visningar · startad av LR^evil.sid
tjena på er allihop
jag tänkte låta folk ladda ner våra replokalslåtar och då vore det
ju trevligt om jag kunde se hur många gånger varje fil har laddats
ner :)
alltså om jag klickar på t.ex. "hink_och_spade.mp3.zip" länken så
ska den räknas upp med ett.
så här ser koden ut tills det blir tillräckligt många för att orka
lägga dem i en databas.
[red] <table cellspacing = '0' cellpadding = '0' border = '0'>
<%
set fs = server.createobject ( "scripting.filesystemobject" )
set f = fs.getfolder ( server.mappath ( "\mp3\" ) )
set fc = f.files
for each i in fc
response.write "<tr>" & vbcrlf & _
"<td><a href='http://tillsvidare.treasure.d2g.com/mp3/" & mid ( i, ( instrrev ( i, "\" ) ) + 1, len ( i ) ) & "'>" & mid ( i, ( instrrev ( i, "\" ) ) + 1, len ( i ) ) & "</a></td>" & vbcrlf & _
"</tr>" & vbcrlf
next
%>
</table>[/red]
men det listar ju bara ut filerna i mappen. vad jag behöver hjälp
med är logiken för att skicka vidare ett värde som jag kan snappa
upp och spara. jag kommer ju inte till en ny sida när jag klickar på
länken.
har jag uttryck mig klart eller måste jag förklara något ytterligare?
Du kan ju spara det i en QueryString. Eller så kan du göra det till ett formulär och lägga till typ OnClick="this.form.Submit()" om du vill att det ska hämtas med Request.Form().
Har kanske förstått ditt meddelande fel.
ska det fungera fast du inte laddar någon ny sida med länken?
så här ser det ut nu
[red]<%
[b]if request ( "action" ) = "upone" then
response.write request ( "song" )
else[/b]
set fs = server.createobject ( "scripting.filesystemobject" )
set f = fs.getfolder ( server.mappath ( "\mp3\" ) )
set fc = f.files
for each i in fc
response.write "[b]<form action = '" & request.servervariables ( "script_name" ) & "?action=upone&song=" & mid ( i, ( instrrev ( i, "\" ) ) + 1, len ( i ) ) & "' method = 'get'>[/b]" & vbcrlf & _
"<tr>" & vbcrlf & _
"<td><a href='http://tillsvidare.treasure.d2g.com/mp3/" & mid ( i, ( instrrev ( i, "\" ) ) + 1, len ( i ) ) & "'[b] OnClick='this.form.submit'[/b]>" & mid ( i, ( instrrev ( i, "\" ) ) + 1, len ( i ) ) & "</a></td>" & vbcrlf & _
"</tr>" & vbcrlf & _
"[b]</form>[/b]" & vbcrlf
next
[b]end if[/b]
%>[/red]
men det händer inget
den feta stilen är vad jag lagt till sedan senast. ser det rätt ut eller?
När jag gjorde ett sådant script senast så såg det ut så här (demo):
Databas:
Låttitel - Antal nedladdningar
Hej - 2
Då - 20
När du sedan visar låtarna loopar du som vanligt ut dem med ett RecordSet och länkar dem till en annan sida, skicka också med ID:t. På nästa sida uppdaterar ett script kolummen "Antal nedladdningar" genom att plussa med ett. Därefter skickas man vidare till själva filen. Jag kan visa dig om du vill...
Sedan är det kanske inte det mest praktiska att använda datbas om det bara gäller någon enstaka låt (när jag använde det gällde det hundratals filer). Det kanske är lättare att byta ut databasen mot en textfil.. typ:
Rad 1 = TS.ReadLine
Rad 1 = Rad 1 + 1
Och sedan skicka tillbaka det nya värdet.
:)
jo.. det förståss, men då skickar jag ju dem till en ny sida jag ville att det skulle räkna upp utan att skicka dem till en ny sida. det kanske inte är möjligt?