Avatar billede no_doubt Nybegynder
22. juni 2005 - 16:14 Der er 6 kommentarer og
1 løsning

bliver nød til det - insert

Hvad er der galt med denne.'

<% if request.querystring("link") = "afstemning" and request.querystring("afstemningsid") <> "" and request.querystring("id") <> "" then%><%
set conn = server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
strSQL = "select * from ip_check_afstemning"
Set rs = Conn.Execute(strSQL)
if request.ServerVariables("REMOTE_ADDR") = rs("ip") and request.querystring("afstemningsid") = rs("afstemning") then%>
<%
set conn = server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
Conn.Execute "UPDATE afstemning SET antal=antal+1 WHERE id = " & request.querystring("id") & ""

Set conn = Server.CreateObject("ADODB.connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
sql = "INSERT INTO ip_check_afstemning (ip, afstemning) VALUES ('" & request.ServerVariables("REMOTE_ADDR")& "', '" & request.querystring("afstemningsid")& "')"
Conn.execute(sql)
response.redirect "bruger.asp?link=afstemning&afstemningsid=" & request.querystring("afstemningsid") & ""
else
response.write ("Du har stemt")%>
<%end if%>

Meningen er at hvis ikke IPen og afstemningen findes i databasen skal afstemingen updates og derefter skal det skrives i ip_check_afstemning at den pågældende ip nu har stemt på den pågældende således at hvis de prøver at stemnne næstegang med samme ip får de = ("Du har stemt")
Avatar billede nielle Nybegynder
22. juni 2005 - 18:14 #1
Uha, der var mange fejl... Prøv dette her i stedet:

<%
If Request.QueryString("link") = "afstemning" And Request.QueryString("afstemningsid") <> "" And Request.QueryString("id") <> "" Then
    ' Der er kun grund til at åbne forbindelsen til databasen *en* gang.
    Set Conn = server.CreateObject("ADODB.Connection")
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")

    ' Find IP og afstemnings id.
    IP = Request.ServerVariables("REMOTE_ADDR")
    Afstemning = Request.QueryString("afstemningsid")

    ' Spørg databasen hvor mange gange det IP og det Afstemnings ID er brugt sammen.
    strSQL = "SELECT count(*) AS Antal FROM ip_check_afstemning WHERE ip='" & IP & "' AND afstemning='" & Afstemning & "'";
    Set rs = Conn.Execute(strSQL)

    If rs("Antal") <> 0 Then
        Response.Write ("Du har stemt")  ' Mere end 0 gange!
    Else
        ' Det er brugt 0 gange.

        ' Opdater databasen med IP og Afstemning
        strSQL = "INSERT INTO ip_check_afstemning (ip, afstemning) VALUES ('" & IP & "', '" & Afstemning & "')"
        Conn.Execute(strSQL)

        ' Optæl afstemning
        Conn.Execute "UPDATE afstemning SET antal=antal+1 WHERE id = " & Request.QueryString("id")

        ' Redirect
        Response.Redirect "bruger.asp?link=afstemning&afstemningsid=" & Afstemning
    End If
End If
%>
Avatar billede nielle Nybegynder
22. juni 2005 - 23:04 #3
Hvilken linje er:

havrefras/bruger.asp, line 35

?
Avatar billede nielle Nybegynder
30. juni 2005 - 20:49 #4
Har du fået løst dit problem? Fejlbeskeden er i hvert fald forsvundet nu.
Avatar billede nielle Nybegynder
11. juli 2005 - 20:02 #5
Hvad med noget respons her?
Avatar billede no_doubt Nybegynder
13. august 2005 - 21:59 #6
Lukker løste det selv
Avatar billede nielle Nybegynder
13. august 2005 - 22:16 #7
Og hvordan ser din løsning så ud?
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