Avatar billede phineas_phreak Nybegynder
11. marts 2004 - 14:09 Der er 3 kommentarer og
2 løsninger

redirecte hvis bruger har stemt

Jeg har en login side hvor folk får tildelt et session id. Derefter har jeg et skema som skal udfyldes.

Jeg vil gerne have det lavet sådan så folk kun kan udfylde skemaet 1 gang pr. måned.

Scriptet kører når folk trykker submit. Der skal den gå ind og checke følgende:

If checkbrugerSQL.BOF Or checkbrugerSQL.EOF Then
  ' //Hvis brugeren ikke findes i databasen skriv indtastede data til tabel

Else
  Response.Redirect "side2.asp"
end if

  ' // Ellers redirect til ny side med beskeden du har allerede stemt.


Her er det jeg har lavet, men det virker ik. Hvad går galt ?


Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db.mdb")

    Set rs = Server.CreateObject("ADODB.RecordSet")
    strSQL = "Select * From tabel1"
    checkbrugerSQL = "SELECT * FROM tabel1 WHERE id=" & Session("userid") &
   
    rs.Open strSQL, checkbrugerSQL, Conn, adOpenKeyset, adLockOptimistic

    If checkbrugerSQL.BOF Or checkbrugerSQL.EOF Then
    ' //Hvis brugeren ikke findes gå videre
   
    rs.AddNew
      rs("svar") = Request.Form("question1")
      rs.Update

    rs.Close
    Set rs = Nothing
       
    ' // Ellers omstil til ny side med besked DU HAR ALLEREDE STEMT
    Else
        Response.Redirect "side2.asp"
    end if
   
Conn.Close
set Conn = Nothing


håber nogen kan hjælpe. På forhånd tak
Avatar billede websam Nybegynder
11. marts 2004 - 14:25 #1
Du mangler et " tegn for enden af denne :

checkbrugerSQL = "SELECT * FROM tabel1 WHERE id=" & Session("userid") &

/Websam
Avatar billede websam Nybegynder
11. marts 2004 - 14:29 #2
Og ellers ville jeg lave det sådan her :

Sql = "SELECT * FROM tabel1 WHERE id=" & Session("userid") &""
Set Rs = Conn.Execute(Sql)

If (Rs.BOR Or Rs.EOF) Then
    '--- Brugeren findes ikke og der kan skrives til db
    Sql = "insert Into Tabel (Tekst) Values ('"&Request.Form("Tekst")&"')"
    Conn.Execute(Sql)
Else
    '--- Brugeren sendes til anden side.
    Response.Redirect("Side2.asp")
End If

/Websam
Avatar billede phineas_phreak Nybegynder
11. marts 2004 - 14:35 #3
Kan det lade sig gøre på den måde som jeg har lavet det ?

Forresten har du skrevet Rs.BOR og ikke Rs.BOF :)

Jeg er bare i tvivl om hvor jeg skal sætte mit else og end if i det stykke kode jeg bruger.
Avatar billede phineas_phreak Nybegynder
11. marts 2004 - 14:42 #4
fandt selv ud af det med lidt af din hjælp...
Havde glemt     Set rscheckbrugerSQL = conn.Execute(checkbrugerSQL)

Så du får lidt point
Avatar billede websam Nybegynder
11. marts 2004 - 19:25 #5
Takker og bukker :o)
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