Avatar billede jps6kb Novice
19. juli 2004 - 09:36 Der er 13 kommentarer og
1 løsning

Check for dubletter før tilføj til Access db ?

Hej.

Hvordan får jeg et script til at tjekke om "navn" eksisterer i en database før den tilføjer data..
Altså hvis en bruger opretter sig selv... så der ikke er to der hedder ex. "Knud Nielsen"
Avatar billede fennec Nybegynder
19. juli 2004 - 10:07 #1
set rs = conn.execute("select * from DinTabel where navn='"& request.form("navn") &"'")
if rs.eof then
'navn eksistere ikke i database
conn.execute("insert into DinTabel.....")
else
'navn eksistere i databasen
end if
Avatar billede jps6kb Novice
19. juli 2004 - 10:34 #2
Jeg får en :

Microsoft JET Database Engine error '80040e14'

Syntax error in FROM clause.

/go1/strnewuser.asp, line 9


Jeg har prøvet med en anden tabel i samme db... det virker godt nok.. hvorfor kan den ikke lave udtræk fra min user tabel ? Der er ikke noget særligt ved den...

user
----------------
id  (autonum.)
username (text)
password (text)
ip (text)
admin (text)
----------------

Hvad er der galt med den ?
Avatar billede jps6kb Novice
19. juli 2004 - 10:34 #3
Det hele ser sådan ud.:




<%@LANGUAGE="VBScript"%>

<!--#include file="connect.asp"-->
<%
strnavn = Request.Form("username")
strnavn = Replace(strnavn, "'", "''")
%>
<%
set rs = Myconn.execute("select * from user where username='"& request.form("username") &"'")
if rs.eof then
'navn eksistere ikke i database
sql = "insert into user(Date(), Time(),'"&strusername&"','"&request.form("password")&"')"
Myconn.execute(sql)
Response.Redirect("login.asp")
else
newerror = "Brugeren eksisterer allerede...."
Response.Redirect("newuser.asp")
end if
%>
Avatar billede fennec Nybegynder
19. juli 2004 - 10:49 #4
user er et reserveret ord i SQl så der skal [] omkring.
set rs = Myconn.execute("select * from [user] where username='"& request.form("username") &"'")
Avatar billede jps6kb Novice
19. juli 2004 - 10:50 #5
Ahhh... jeg ser... prøver.
Avatar billede jps6kb Novice
19. juli 2004 - 10:53 #6
Jeg får den stadig på linie 13..

sql = "insert into [user] (Date(), Time(),'"&strusername&"','"&request.form("password")&"')"
Avatar billede fennec Nybegynder
19. juli 2004 - 10:57 #7
prøv med:
sql = "insert into [user](username,password,ip,admin) values('"&strusername&"','"&request.form("password")&"','ved ikke','ved ikke')"

Det er den rigtige syntax for indsættelse.
Avatar billede jps6kb Novice
19. juli 2004 - 11:01 #8
Nej... det samme... ved ikke ... skulle jeg indsætte noget der?
Avatar billede fennec Nybegynder
19. juli 2004 - 11:04 #9
hvordan ser koden ud nu???
Avatar billede jps6kb Novice
19. juli 2004 - 11:06 #10
<%@LANGUAGE="VBScript"%>

<!--#include file="connect.asp"-->
<%
strnavn = Request.Form("username")
strnavn = Replace(strnavn, "'", "''")
%>
<%
set rs = Myconn.execute("select * from [user] where username='"& request.form("username") &"'")
if rs.eof then
'navn eksistere ikke i database
sql = "insert into [user](username,password,ip,admin) values('"&strusername&"','"&request.form("password")&"','ved ikke','ved ikke')"
Myconn.execute(sql)
Response.Redirect("login.asp")
else
newerror = "Brugeren eksisterer allerede...."
Response.Redirect("newuser.asp")
end if
%>
Avatar billede fennec Nybegynder
19. juli 2004 - 11:12 #11
ved ikke lige om nogle af de andre også er reserveret ord, men du kan jo altid prøve at smide [] omkring dem alle :o)

sql = "insert into [user]([username],[password],[ip],[admin]) values('"&strusername&"','"&request.form("password")&"','ved ikke','ved ikke')"
Avatar billede jps6kb Novice
19. juli 2004 - 11:30 #12
Perfekt... []'erne klarede det...
Smid et svar ;)

... og lige en lille sidste ting...

Jeg har jo :

else
newerror = "Brugeren eksisterer allerede"
Response.Redirect("newuser.asp")
end if


og så vil jeg udskrive den på newuser.asp med :

<% = request.querystring("newerror")%>

Har jeg lavet fejl der ?
Avatar billede fennec Nybegynder
19. juli 2004 - 11:38 #13
nej, men du mangler at få den med som parameter.

Response.Redirect("newuser.asp?newerror="& newerror)
Avatar billede jps6kb Novice
19. juli 2004 - 11:38 #14
Nåeh ja... *GG* Takker
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Vil du være med til at opbygge og udvikle Forsvarets dronekapacitet?

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Cyberdivisionen søger IT-Supporter til lokal IT støtte i Oksbøl

TD SYNNEX Denmark ApS

Sales Coordinator

Rambøll Management Consulting

Senior AI Engineer