Avatar billede alizweb Nybegynder
31. december 2000 - 16:13 Der er 17 kommentarer og
1 løsning

Huh? Hvad sker der man!?

Jeg ved sq ikke, men i http://www.eksperten.dk/spm/39813.
Får jeg den korrekte kode, tilsidst!
Det duede dog også fint der hvor jeg sad.
Men nu er jeg hjemme og skulle prøve igen!
Men nu dur det ikke, den bliver ved med at sige at Bruger navnet allerede er taget??
Side:
www15.brinkster.com/FTK/opret.asp

Hvis i har brug for det kan i også spørge om mine koder??


/^~Rasmus
Avatar billede netsrac Praktikant
31. december 2000 - 16:57 #1
Sådan her skal det være :-)

  <%

Const adOpenKeyset = 1
Const adLockOptimistic = 3

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"db.mdb\") & \";UID=admin;PWD=;\"
strSQL = \"SELECT * FROM users WHERE username = \'\" & request.form(\"username\") & \"\'\"
Set rs = Conn.Execute(strSQL)
if not (rs.BOF Or rs.EOF) Then
Response.Write (\"Bruger navnet er allerede taget.\")

Else


    Set rs = Server.CreateObject(\"ADODB.RecordSet\")
    strSQL = \"Select * From users\"
    rs.Open strSQL, Conn, adOpenKeyset, adLockOptimistic

      rs.AddNew
      rs(\"Username\") = Request.form(\"bnavn\")
      rs(\"Password\") = Request.form(\"pas\")
      rs(\"RigtigNavn\") = Request.form(\"rnavn\")
      rs(\"Email\") = Request.form(\"email\")
      rs.Update

    rs.Close
    Set rs = Nothing




%>
<html>

<head>
<META HTTP-EQUIV=\"Refresh\" CONTENT=\"5;URL=default.asp\">

</style>
</head>

<BODY bgcolor=\"#008080\" text=\"#FFFF00\" link=\"#800000\" vlink=\"#800000\" alink=\"#800000\" topmargin=\"10\" leftmargin=\"0\"
rightmargin=\"0\">
<center><FONT FACE=\"Arial\" SIZE=\"+2\">Din bruger er nu oprettet,<br>
du bliver automatisk viderstillet til login op 5 sekunder.</FONT></center>
<%
end if
Conn.Close
set Conn = Nothing
%>
</body>
</html>
Avatar billede alizweb Nybegynder
31. december 2000 - 17:06 #2
Så siger den:

Microsoft OLE DB Provider for ODBC Drivers error \'80040e2f\'

[Microsoft][ODBC Microsoft Access Driver] The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.

/ftk/opretdata.asp, line 25
Avatar billede netsrac Praktikant
31. december 2000 - 17:09 #3
Hvad er din primary key ?
Den er vel id ikke ? Du har et felt der er autonummerering og hedder id ikke ?
Avatar billede alizweb Nybegynder
31. december 2000 - 17:12 #4
Jo!
Avatar billede netsrac Praktikant
31. december 2000 - 17:13 #5
Så er det sikkert noget med at et af felterne ikke tillader dubletter ? Måske email eller ?
Avatar billede alizweb Nybegynder
31. december 2000 - 17:14 #6
*S* tjekker lige!
Avatar billede alizweb Nybegynder
31. december 2000 - 17:17 #7
Hvordan finder jeg ud af det og retter det??
Avatar billede netsrac Praktikant
31. december 2000 - 17:20 #8
Åben din database i Acces og vælg design visning for tabellen, marker et felt, nede i bunden kan du så se om en af felterne ikke tillader dubletter.
Avatar billede alizweb Nybegynder
31. december 2000 - 17:24 #9
Hvad betyder det \"Ja ingen dubletter\" entlig?
Og hvad gør det?
Avatar billede netsrac Praktikant
31. december 2000 - 17:31 #10
Hvis der står ja ingen dubletter betyder det f.eks. at feltet email ikke kan indeholde 2 poster med den samme email.
Avatar billede alizweb Nybegynder
31. december 2000 - 17:52 #11
Provider error \'80020005\'

Type mismatch.

/FTK/opretdata.asp, line 25


Skriver den så!
Avatar billede alizweb Nybegynder
31. december 2000 - 17:53 #12
<%

Const adOpenKeyset = 1
Const adLockOptimistic = 3

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"/FTK/db/login_2000.mdb\") & \";UID=admin;PWD=;\"
strSQL = \"SELECT * FROM users WHERE username = \'\" & request.form(\"username\") & \"\'\"
Set rs = Conn.Execute(strSQL)
if not (rs.BOF Or rs.EOF) Then
Response.Write (\"Bruger navnet er allerede taget.\")

Else


    Set rs = Server.CreateObject(\"ADODB.RecordSet\")
    strSQL = \"Select * From users\"
    rs.Open strSQL, Conn, adOpenKeyset, adLockOptimistic

      rs.AddNew
      rs(\"Username\") = Request.form(\"bnavn\")
      rs(\"Password\") = Request.form(\"pas\")
      rs(\"RigtigNavn\") = Request.form(\"rnavn\")
      rs(\"Email\") = Request.form(\"email\")
      rs(\"SidstPå\") = \"Kl.\" & TimeNow & \"D.\" & DateNow
      rs(\"BrugerStatus\") = \"CoAdmin\"
      rs.Update

    rs.Close
    Set rs = Nothing




%>
<html>

<head>
<META HTTP-EQUIV=\"Refresh\" CONTENT=\"5;URL=default.asp\">

</style>
</head>

<BODY bgcolor=\"#008080\" text=\"#FFFF00\" link=\"#800000\" vlink=\"#800000\" alink=\"#800000\" topmargin=\"10\" leftmargin=\"0\"
rightmargin=\"0\">
<center><FONT FACE=\"Arial\" SIZE=\"+2\">Din bruger er nu oprettet,<br>
du bliver automatisk viderstillet til login op 5 sekunder.</FONT></center>
<%
end if
Conn.Close
set Conn = Nothing
%>
</body>
</html>
Avatar billede netsrac Praktikant
31. december 2000 - 17:59 #13
Brug aldrig tegnene æ ø å til navne på felter og varabler, det er fordi du har brugt å

      rs(\"SidstPå\") = \"Kl.\" & TimeNow & \"D.\" & DateNow

Avatar billede alizweb Nybegynder
01. januar 2001 - 12:40 #14
NopeZ..
Jeg fandt selv ud af det! TimeNow og dateNow dur ikke!
Men jeg kan sagtens bruge sidstPÅ
MEn du skal da nok få dine points alligevel!
Avatar billede alizweb Nybegynder
01. januar 2001 - 12:41 #15
HVIS du lige ka sige mig hvordan jeg kan lave det sådan så man skriver løkke der viser alle brugere i databasen og man ved et tryk på et navn sletter navnet og brugeren!?
Avatar billede netsrac Praktikant
01. januar 2001 - 15:59 #16
vis.asp
--------------------
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"/FTK/db/login_2000.mdb\") & \";UID=admin;PWD=;\"
strSQL = \"SELECT * FROM users\"
Set rs = Conn.Execute(strSQL)
if rs.eof then
response.write \"Der er ingen brugere i databasen\"
else
do until rs.eof
response.write \"<a href=\'delete.asp?id=\" & rs(\"id\") & \"\'>\" & rs(\"username\") & \"</a><br>\"
rs.movenext
loop
end if
%>
-------------------------
delete.asp
------------------------
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"/FTK/db/login_2000.mdb\") & \";UID=admin;PWD=;\"
strSQL = \"DELETE FROM users where id=\" & request.querystring(\"id\")
Conn.Execute(strSQL)
%>
Avatar billede alizweb Nybegynder
05. januar 2001 - 17:09 #17
OKay takker
Avatar billede netsrac Praktikant
06. januar 2001 - 00:50 #18
np :-)
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