18. august 2002 - 14:56Der er
19 kommentarer og 1 løsning
Login system - HJÆÆÆÆÆLP
Hejsa...
Jeg kunne godt bruge lidt hjælp her :)
Jeg får denne fejl:
Fejltype: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access-driver] Feltet "Brugere.Brugernavn" kan ikke indeholde en streng af længden nul. /login sys/opret.asp, line 32
Når jeg prøver at oprette en ny bruger i mit login system.
For I = LBound(arrCheck, 2) To UBound(arrCheck, 2) If arrCheck(0, I) = strBrugernavn Then Response.Write "Brugernavnet er optaget" Else SQL = "Insert into Brugere (Brugernavn, Kodeord) values('" & strBrugernavn & "', '" & strKodeord & "')" Conn.Execute(SQL) End if Next
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det betyder du prøver at ligge et tomt brugernavn i databasen. Det ser ud som det er i denne linie brugernbavet bliver tomt da du bruger Brugernavn og ikke strBrugernavn som navnet lige er gemt i så ret denne
Du har en for som hendet alle rows ?? fra recordet sette så hver gang strBrugernavn er forskellig fra arrCheck(0,I) så indsætter den en det nye brugernavn, så næste gang bliver det indsat 3 gange ???
For I = LBound(arrCheck, 2) To UBound(arrCheck, 2) If arrCheck(0, I) = strBrugernavn Then Response.Write "Brugernavnet er optaget" Else SQL = "Insert into Brugere (Brugernavn, Kodeord) values('" & strBrugernavn & "', '" & strKodeord & "')" Conn.Execute(SQL) End if Next
Hvis du vil tjekke om et brugernavn findes kan det gøres sådan her:
SQL = "SELECT Brugernavn FROM Brugere WHERE Brugernavn = '" & strBrugernavn & "'" Set rs = Conn.execute (SQL) if rs.EOF then 'Opret nyt bruger i databasen else 'Brugernavnet findes end if
If rs.BOF OR rs.EOF Then SQL = "Insert into Brugere (Brugernavn, Kodeord) values('" & strBrugernavn & "', '" & strKodeord & "')" Conn.Execute(SQL) Else Response.Write "Brugernavnet er optaget..." End if
For jeg vælger alt fra databasen hvor feltet Brugernavn indeholder det brugernavn man tastede og tjekker derefter om der er et felt med noget i. Hvis ikke så indsætter jeg en ny bruger. Hvis der er skulle der stå Brugeren er optaget men det virker så ikke :(
Man får databasen til at tjekke om strBrugernavn findes i databasen, det gøres med denne SQL: strSQL = "Select * From Brugere Where Brugernavn = '" & strBrugernavn & "'"
og når man så udføre SQL'en med: Set rs = Conn.Execute(strSQL)
Så vil databsen returnere en record med brugernavet i hvis det findes så det som tjekker om det nye brugernavn findes er denne if-sætning for hvis recordet'et er tomt så findes bruger navet ikke, hvis der er data i recordset'et så vil rs.EOF være false.
strSQL = "Select * From Brugere Where Brugernavn = '" & strBrugernavn & "'"
Set rs = Conn.Execute(strSQL)
If NOT rs.BOF OR rs.EOF Then SQL = "Insert into Brugere (Brugernavn, Kodeord) values('" & strBrugernavn & "', '" & strKodeord & "')" Conn.Execute(SQL) Else Response.Write "Brugernavnet er optaget..." End if
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.