Avatar billede knallertjoe Praktikant
04. november 2005 - 13:24 Der er 12 kommentarer og
1 løsning

Bedøm et flashspil

Hej X-perter.
Jeg påtænker at lave en side med nogle flashspil.
Jeg laver siden i asp.
Jeg vil gerne have, at brugeren kan bedømme spillet (evt i en dropdown), og samtidig vil jeg gerne have at gennemsnittet af de tidligere bedømmelser står under den lille thumbnail jeg laver til spillet.
Evt. vil jeg også gerne have, at man kan komme med en kommentar til spillet.
Hvordan laves dette lettest?
Avatar billede fennec Nybegynder
04. november 2005 - 13:28 #1
Du skal have en database tilknyttet med to tabeller. En "spil" tabel og en "bedømmelse" tabel.

Så gemme du bare hver bedømmelse i databasen og så kan du trække alt den statestik ud du vil :o)
Avatar billede fennec Nybegynder
04. november 2005 - 13:29 #2
Hvis kommentaren ikke er sammenknyttet med bedømmelsen, skal den have en tabel for sig selv...
Avatar billede knallertjoe Praktikant
04. november 2005 - 13:44 #3
Findes der er skabelon for noget sådant på nettet?
Avatar billede fennec Nybegynder
04. november 2005 - 13:46 #4
Sikkert, men det tager ikke lang tid at lave. Vil faktist tro det er hurtigere at lave selv, end at tilpasse et eksisterende script.
Avatar billede fennec Nybegynder
04. november 2005 - 13:46 #5
Har du adgang til en database og hvilken??
Avatar billede knallertjoe Praktikant
04. november 2005 - 13:58 #6
Ja.
En access database.
Men jeg er absolut ikke hård til databaser.
Avatar billede fennec Nybegynder
04. november 2005 - 16:26 #7
Dette er hvad du skal lave (forudsat at kommentar er et punkt for sig selv):

Game:
id autonummer
name tekst

Judging:
id autonummer
gameId tal
points tal

commentary:
id autonummer
gameID tal
comment notat
Avatar billede fennec Nybegynder
04. november 2005 - 16:40 #8
Det største problem ligger i at identificere flashspillet med det id i databasen, så Game tabellen skal nok udvides med nogle flere kolonner på et tidspunkt.

I første omgang indtaster du bare et par spil i Game tabellen.

Så kører du denne fil:

test.asp:
<%
strDSN = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("games.mdb")
Set Conn = Server.createObject("ADODB.Connection")
Conn.Open strDSN

mode = Request.Querystring("mode")

if mode = "points" then
  conn.execute("insert into Judging(gameID,points) values("& Request.Form("gameID") &","& Request.Form("point") &")")
elseif mode = "comment" then
  conn.execute("insert into commentary(gameID,comment) values("& Request.Form("gameID") &","& Request.Form("comment") &")")
end if

%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
</head>

<body>
Point<br>
<form method="post" action="test.asp?mode=points">
<select name="gameID">
<%
  set rs = conn.execute("select * from Game")
  while not rs.eof
    response.write "<option value="""& rs("id") &""">"& rs("name")
    rs.MoveNext
  wend
%>
</select><br>
<input type="text" name="point" value=""><br>
<input type="Submit" value="Gem">
</form>

Kommentar<br>
<form method="post" action="test.asp?mode=comment">
<select name="gameID">
<%
  set rs = conn.execute("select * from Game")
  while not rs.eof
    response.write "<option value="""& rs("id") &""">"& rs("name")
    rs.MoveNext
  wend
%>
</select><br>
<textarea name="comment" rows="4" cols="40"></textarea><br>
<input type="Submit" value="Gem">
</form>



</body>
</html>

I den kan du tilknytte kommentar/point til de enkelte spil.
Avatar billede fennec Nybegynder
04. november 2005 - 16:41 #9
var lige en fejl:
conn.execute("insert into commentary(gameID,comment) values("& Request.Form("gameID") &","& Request.Form("comment") &")")

skal være:
conn.execute("insert into commentary(gameID,comment) values("& Request.Form("gameID") &",'"& Request.Form("comment") &"')")
Avatar billede fennec Nybegynder
04. november 2005 - 16:44 #10
Du kan så trække alle kommentar ud med:

set rs = conn.execute("select * from commentary where gameID=123")
while not rs.eof
  response.write rs("comment") &"<br>"
  rs.MoveNext
wend

Gennemsnitlig point med:
set rs = conn.execute("select avg(points) as gennemsnit from Judging where gameID=123")
if nor rs.eof then
  response.write rs("gennemsnit")
end if
Avatar billede knallertjoe Praktikant
05. november 2005 - 08:13 #11
Nu min side er ikke lavet med querystrings :-(
Avatar billede fennec Nybegynder
07. november 2005 - 10:22 #12
Så hardcoder du bare databaseID'et ind i sql sætningerne. Præsist som jeg har gjort i sidste eks med "gameID=123".
Avatar billede knallertjoe Praktikant
30. december 2005 - 08:07 #13
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester