men nu undrar jag hur man kan spara den aktuella pängen i databasen. har kommit så här långt med koden:
if request.querystring("points") then
points = request.querystring("points")
If points <> "" then
SQL = "SELECT * from ovrigt where sort = 'tetris' order by varde3 asc"
Set RS = Connect.Execute(SQL)
If cInt(points) > cInt(RS("varde3")) then
SQL = "Insert Into ovrigt(sort, datum, username, varde, varde3) Values('tetris', '"&SweDate(Now)&"', '"&session("username")&"', '"&session("id")&"', "&points&")"
Connect.Execute(SQL)
SQL4 = "DELETE from ovrigt where sort = 'tetris' order by varde3 asc"
Connect.Execute(SQL4)
End if
Set rs = nothing
End If
end if
Men hur ska man få över poängen till denna asp-kod??
Du är på god väg, men istället för att använda method="get" från formuläret skulle jag använda method="post" (och då request.form istället för request.querystring i ASP) för att minska risken för dubbelpostningar. Men, du har väl egentligen inga problem med JavaScript-biten utan mer en fråga hur du sparar informationen i db'n från ASP?
Du har ju redan att formulärsfält med poängen. Ändra <form>-taggen så att den pekar på din ASP-sida (där du sparar informationen i din db); <form action="saveScore.asp" method="post"> Lägg till ett fält för namn; <input type="text" name="name"> och en spara-knapp; <input type="submit" value="Spara min poäng">
Har du redan något namn på spelaren då? Har du spelat arkad någon gång har du säkert märkt att man brukar ange det efter att man spelat klart och fått en poäng som platsar på hi-score listan.
Men visst kan du scripta det. Använd _block.score.document.forms[0].submit() för att skicka formuläret automatiskt.
Tidigare nämnt formulär (du måste alltså lägga till action etc. för formuläret som jag nämnde tidigare) skickas. Jag utgår från att _block.score.document.forms[0] stämmer eftersom det används för att skriva ut poängen.
if request.querystring("points") then
points = request.form("Game_Score")
If points <> "" then
SQL = "SELECT * from ovrigt where sort = 'tetris' order by varde3 asc"
Set RS = Connect.Execute(SQL)
If cInt(points) > cInt(RS("varde3")) then
SQL = "Insert Into ovrigt(sort, datum, username, varde, varde3) Values('tetris', '"&SweDate(Now)&"', '"&session("username")&"', '"&session("id")&"', "&points&")"
Connect.Execute(SQL)
SQL4 = "DELETE from ovrigt where sort = 'tetris' order by varde3 asc"
Connect.Execute(SQL4)
End if
Set rs = nothing
End If
end if
Poängen får jag alltså från request.form("Game_Score")
från detta formulär: