Avatar billede richardr Nybegynder
09. juli 2000 - 01:46 Der er 9 kommentarer og
1 løsning

Tjekke om en bruger eksistere!!

Jeg har lavet et bruger system..
men det skal jo være sådan at to ikke kan bruge det samme brugernavn, så der skal være en tjek når en bruger bliver oprettet... hvordan gør jeg nemmest det...
det er en access db..bare lige for at i ved det..

Avatar billede lp Nybegynder
09. juli 2000 - 01:50 #1
oki, here goes:

du har allerede en sql streng som indsætter brugeren.....før denne laver du en sql som tjekker basen igennem for et brugernavn som passer.

SQL="SELECT * from tabel where brugernavn like '"&Request("brugernavn")&"'"
set tjek = DinConn.Execute(SQL)

If NOT tjek.EoF Then ' Der er en der matcher
Response.Write "Brugernavn eksisterer"
Else
Din sql med indsættelse
End If

Denne skulle også tjekke sådan at du ikke kan oprette en bruger som hedder Kurt eller KuRt hvis der allerede er en kurt

/LP
Avatar billede erikjacobsen Ekspert
09. juli 2000 - 01:55 #2
Hvad gør du så, lp, hvis der kommer en mere, i det brøkdel af et millisekund, mellem du laver
din select til du laver din insert, og han vælger samme brugernavn. Jeg spø'r bare...

Suk, er det så sent....godnat.

Avatar billede lp Nybegynder
09. juli 2000 - 01:59 #3
den kan ikke sikres........jo det kan den såfremt man sørger for at enten script eller sql stopper enhver anden kontakt til basen, men det er en stor anden snak...........men en let måde at sikre det på er at lave brugernavn til en primær nøgle i databasen, så er den ihvertfald helt sikret, for der vil så komme en databasefejl hvis det forsøges..............chancen er dog minimal :-)

/LP
Avatar billede lp Nybegynder
09. juli 2000 - 02:00 #4
ja, godnat erik, drøm sødt :-)
Avatar billede richardr Nybegynder
09. juli 2000 - 02:41 #5
Lige hvad jeg skulle bruge lp... spank you....
Avatar billede erikjacobsen Ekspert
09. juli 2000 - 09:22 #6
Joh, lp, god morgen igen. Det kan nemlig sagtens løses. Du sørger for at brugernavnet
er en nøgle (dermed unik), og så laver du blot en insert i tabellen. Hvis navnet ikke findes
i forvejen, bliver det sat ind, og hvis det findes får man en fejl (navnet skal være unikt).
Så skal man bare fange fejlen, så den ikke bliver skrevet ud på skærmen til brugeren,
men så han får en fornuftig besked. Jeg har ikke lige et eksempel i ASP, men det er nemt
nok.

Men din løsning virker jo også med meget stor sandsynlighed.....
Avatar billede lp Nybegynder
09. juli 2000 - 16:38 #7
erik>> det var jo det jeg skrev....lav den som en primary key....(altså unik) så kan der ikke være 2 magen til hinanden og man kan også lave noget kode så der ikke vises databasefejl.....
Avatar billede richardr Nybegynder
09. juli 2000 - 16:46 #8
Hvordan fanger man sådanne fejl??
Avatar billede lp Nybegynder
09. juli 2000 - 16:49 #9
ehhhmmm, først skal feltet brugernavn i basen jo være en unik nøgle, den eksakte asp kode har jeg ikke lige pt., men hvis jeg falder over noget dokumentation siger jeg lige til.

/LP
Avatar billede richardr Nybegynder
09. juli 2000 - 16:55 #10
ok..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