Avatar billede kibber Nybegynder
05. november 2003 - 21:42

Afstemning - Skjule/vise afstemningsknapper/resultat

Jeg er ved at lave en afstemning. Brugeren skal logge ind for at kunne stemme. Det er meningen, at afstemningsknapperne kun skal komme frem, hvis brugeren ikke har stemt før, og at resultatet af afstemningen kun skal komme frem, hvis brugeren har stemt.

Problemet er, at den ikke viser nogen af delene. Hvad gør jeg forkert?

<%@language = "javascript"%>

<%
if(Request.QueryString("funktion")== "indsaet")
{
  var brugernavn = (Request.Form("afstemningsknap")== "brugernavn")
  var ja = (Request.Form("afstemningsknap")== "ja")
  var nej = (Request.Form("afstemningsknap")== "nej")
  var vedikke = (Request.Form("afstemningsknap")== "vedikke")

  var connect = Server.CreateObject("ADODB.Connection");
  connect.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Afstemning.mdb"));
  connect.Execute("Insert into Stemmer (Brugernavn, Ja, Nej, Vedikke) values (" + brugernavn + "," + ja + ", " + nej + ", " + vedikke + ")");
 
  connect.close();

  Response.Redirect("Afstemning.asp");
}
%>

<html>
<head>

<script language= "JavaScript">

function validering()
{
  if(document.afstemningsformular.valgt.value == "0")
  {
      alert("Vælg venligst, hvad du vil stemme på!");
  }
 
  else
  {
      document.afstemningsformular.submit();
  }
}

function checkRadioButton()
{
  document.afstemningsformular.valgt.value = "1";
}

</script>

</head>
<body>

<%
var connect = Server.CreateObject("ADODB.Connection");
connect.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Afstemning.mdb"));
var bruger = connect.Execute("SELECT * From Holdliste Where ID=" + Session("bruger"))
var bruger2 = connect.Execute("SELECT * From Stemmer Where ID=" + Session("bruger"))
%>
<table>
<form action="Afstemning.asp?funktion=indsaet" name="afstemningsformular" method="post">
<input type="hidden" name="valgt" value="0">
<input type="hidden" name="brugernavn" value='<%=bruger.Fields("brugernavn")%>'>
<tr>
  <td colspan="2">Er denne afstemning spændende?</td>
</tr>
<%
while(!bruger2.eof)
{
if(bruger2.Fields("ja") == true || bruger2.Fields("nej") == true || bruger2.Fields("vedikke") == true)

}
else
{%>
<tr>
  <td><input type="radio" name="afstemningsknap" value="ja" border="0" onclick="checkRadioButton();"></td>
  <td>Ja</td>
</tr>
<tr>
  <td><input type="radio" name="afstemningsknap" value="nej" border="0" onclick="checkRadioButton();"></td>
  <td>Nej</td>
</tr>
<tr>
  <td><input type="radio" name="afstemningsknap" value="vedikke" border="0" onclick="checkRadioButton();"></td>
  <td>Ved ikke</td>
</tr>
<tr>
  <td></td>
  <td><input type="button" value="Stem" onclick="validering();"></td>
</tr>

</form>

</table>
<%
bruger2.MoveNext();
}
}%>

<p>

<%
var res = connect.Execute("SELECT * From Stemmer");

var total = 0;

while(!res.eof)
{
  total ++
 
  res.MoveNext();
}

res.close();

while(!bruger2.eof)
{
if(bruger2.Fields("ja") == true || bruger2.Fields("nej") == true || bruger2.Fields("vedikke") == true)
{ %>
<table border="1">

<% var ja = connect.Execute("SELECT COUNT(*) From Stemmer WHERE Ja=True"); %>
<tr>
  <td>Ja:</td>
  <td><% =Math.round(ja.Fields(0) / total * 100) %></td>
  <td>%</td>
</tr>
<% ja.close();
var nej = connect.Execute("SELECT COUNT(*) From Stemmer WHERE Nej=True"); %>
<tr>
  <td>Nej:</td>
  <td><% =Math.round(nej.Fields(0) / total * 100) %></td>
  <td>%</td>
</tr>
<% nej.close(); %>
<% var vedikke = connect.Execute("SELECT COUNT(*) From Stemmer WHERE Vedikke=True"); %>
<tr>
  <td>Ved ikke:</td>
  <td><% =Math.round(vedikke.Fields(0) / total * 100) %></td>
  <td>%</td>
</tr>
<% vedikke.close(); %>
<tr>
  <td>Stemmer i alt:</td>
  <td><% =total %></td>
  <td></td>
</tr>
</table>   
<%
}
else
{%>
<%
}
bruger2.MoveNext();
}

bruger.close();
bruger2.close();
connect.close(); %>

</body>
</html>
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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