Avatar billede svinget Praktikant
26. juli 2007 - 09:16 Der er 6 kommentarer og
1 løsning

tjekke om person eksisterer inden der gemmes i databasen

Hej

Jeg gemmer data i en Access database. Af og til får jeg dobbelt registreringer.

Jeg har initialer i et form felt (init), og kan jeg tjekke dette form felt op imod en kolonne i databasen (init1) på den side hvor jeg gemmer data, og evt. lave en redirect til anden side hvis initialer allerede eksisterer.

Mvh. Kim
Avatar billede kalp Novice
26. juli 2007 - 09:40 #1
Du laver jo bare en SQL forspørgsel først hvor du prøver at selecte de initialer man har indtastet - hvis resulset har en række så ved du, at personen er oprettet og lav din redirekt ellers opretter du ham blot.
Avatar billede ranglen Nybegynder
26. juli 2007 - 12:33 #2
Hvis du gør init1 til et unikt felt, kan du fange en dobbeltpost således:

On Error Resume Next

[indsæt i database]

If Err.Number <> 0 Then
  ' fejl opstod, bruger eksisterer eller anden dbfejl
Else
  ' ok
End If

On Error Goto 0
Avatar billede svinget Praktikant
26. juli 2007 - 12:44 #3
Jeg ville helst lave en redirect på siden hvor jeg gemmer data. Jeg kan ikke rigtig få det til at funke:

strSQL = "SELECT * FROM table1 where init1 = '" & Request.Form("init") &"' "
set table1 = Conn.Execute(strSQL)
if not table1.eof then

else
  Response.redirect("double.asp")

End If%>

KODEN DER GEMMER DATA HER

/Kim
Avatar billede kalp Novice
26. juli 2007 - 13:13 #4
<%
  Dim strSQL
  strSQL = "SELECT * FROM table1 where init1 = '" & Request.Form("init") &"' "
  Set rs = Conn.Execute(strSQL)
  If rs.EOF Then
    ' opret bruger
  Else
    Response.redirect("double.asp")
  End If
%>
Avatar billede ranglen Nybegynder
26. juli 2007 - 13:17 #5
problemet med select metoden er, at den ikke er flerbruger-venlig. Hvis det utænkelige skulle ske, at tro brugere forsøger at oprette sig samtidigt med det samme navn, så går går det galt
Avatar billede svinget Praktikant
26. juli 2007 - 16:20 #6
Det virker perfekt - takker for hjælpen :)
Avatar billede kalp Novice
26. juli 2007 - 22:42 #7
:D
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