Avatar billede babyworm Nybegynder
12. april 2004 - 18:03 Der er 16 kommentarer og
2 løsninger

Problemer med tilføj i database

Hejsa,

Jeg har lavet en fil: adduser.asp.. Filen skal oprette en bruger i min database. Det virkede fint, indtil jeg begyndte at lege..

Det jeg skal have den til at kunne er at skrive en fejlmeddelse hvis brugernavnet allerede findes i databasen..

Min kode efter redigering:

<!-- #include file="conn.asp" -->
<link rel="stylesheet" type="text/css" href="style.css">
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "addnew" Then

strUserid    = Request.Form("userid")
strUser        = replace(Request.Form("username")&"","'","''")

SQL2 = "SELECT Userid, Username FROM Users WHERE Username=" & strUser
Set rs2 = connection.Execute(SQL2)

if strUsername = rs2("Username") Then
strErr = "Brugernavnet eksisterer allerede"
Else
strUsername    = replace(Request.Form("username")&"","'","''")
End if
strPassword    = replace(Request.Form("password")&"","'","''")
strFullname    = replace(Request.Form("fullname")&"","'","''")
if len(Request.Form("redirect")) = 0 then
strRedirect    = "error.asp"
Else
strRedirect    = replace(Request.Form("redirect")&"","'","''")
end if
strLastlogin    = Request.Form("lastlogin")
strLogintimes    = replace(Request.Form("logintimes")&"","'","''")
strGroup    = replace(Request.Form("group")&"","'","''")

strSQL = "INSERT INTO Users ("
               
    strSQL = strSQL & "[Username], "   
    strSQL = strSQL & "[Password], "
    strSQL = strSQL & "[Fullname], "
    strSQL = strSQL & "[Redirect], "
    strSQL = strSQL & "Lastlogin, "
    strSQL = strSQL & "Logintimes, "
    strSQL = strSQL & "[Group]) "

    strSQL = strSQL & "values ("

    strSQL = strSQL & "'" & strUsername & "', "
    strSQL = strSQL & "'" & strPassword & "', "
    strSQL = strSQL & "'" & strFullname & "', "
    strSQL = strSQL & "'" & strRedirect & "', "
    strSQL = strSQL & "'" & Now & "', "
    strSQL = strSQL & "'" & 0 & "', "
    strSQL = strSQL & "'" & strGroup & "')"

    connection.Execute(strSQL)
%>

<h2>Brugeren er nu oprettet!</h2><br>
<a href="overview.asp">Tilbage til oversigten</a>
<%
Else
%>
<form method="post" action="adduser.asp?cmd=addnew">
  <table>
    <tr>
      <td colspan="2">Brugernavn:<br>
        <input type="text" name="username" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Adgangskode:<br>
        <input type="text" name="password" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Fuldt navn:<br>
        <input type="text" name="fullname" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Videresend:<br>
        <input type="text" name="redirect" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td valign="top" width="120">Gruppe:<br>
        <input type="text" name="group" class="input"><br><br><br><input type="submit" value="Opret" class="knap">
        <br>
        <br></td>
      <td valign="top"><i>Vælg mellem 1-4:<br>Gruppe 1 - Administrator<br>Gruppe 2 - Hold 1<br>Gruppe 3 - Hold 2<br>Gruppe 4 - Hold 3</i></td>
    </tr>
  </table>
  <br>
<%=strErr%>
<a href="overview.asp">Tilbage til oversigten</a>
</form>

<%
End if
closeConn()
%>



Min kode før redigering:

<!-- #include file="conn.asp" -->
<link rel="stylesheet" type="text/css" href="style.css">
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "addnew" Then

strUserid    = Request.Form("userid")
strUsername    = replace(Request.Form("username")&"","'","''")
strPassword    = replace(Request.Form("password")&"","'","''")
strFullname    = replace(Request.Form("fullname")&"","'","''")
if len(Request.Form("redirect")) = 0 then
strRedirect    = "error.asp"
Else
strRedirect    = replace(Request.Form("redirect")&"","'","''")
end if
strLastlogin    = Request.Form("lastlogin")
strLogintimes    = replace(Request.Form("logintimes")&"","'","''")
strGroup    = replace(Request.Form("group")&"","'","''")

strSQL = "INSERT INTO Users ("
               
    strSQL = strSQL & "[Username], "   
    strSQL = strSQL & "[Password], "
    strSQL = strSQL & "[Fullname], "
    strSQL = strSQL & "[Redirect], "
    strSQL = strSQL & "Lastlogin, "
    strSQL = strSQL & "Logintimes, "
    strSQL = strSQL & "[Group]) "

    strSQL = strSQL & "values ("

    strSQL = strSQL & "'" & strUsername & "', "
    strSQL = strSQL & "'" & strPassword & "', "
    strSQL = strSQL & "'" & strFullname & "', "
    strSQL = strSQL & "'" & strRedirect & "', "
    strSQL = strSQL & "'" & Now & "', "
    strSQL = strSQL & "'" & 0 & "', "
    strSQL = strSQL & "'" & strGroup & "')"

    connection.Execute(strSQL)
%>

<h2>Brugeren er nu oprettet!</h2><br>
<a href="overview.asp">Tilbage til oversigten</a>
<%
Else
%>
<form method="post" action="adduser.asp?cmd=addnew">
  <table>
    <tr>
      <td colspan="2">Brugernavn:<br>
        <input type="text" name="username" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Adgangskode:<br>
        <input type="text" name="password" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Fuldt navn:<br>
        <input type="text" name="fullname" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Videresend:<br>
        <input type="text" name="redirect" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td valign="top" width="120">Gruppe:<br>
        <input type="text" name="group" class="input"><br><br><br><input type="submit" value="Opret" class="knap">
        <br>
        <br></td>
      <td valign="top"><i>Vælg mellem 1-4:<br>Gruppe 1 - Administrator<br>Gruppe 2 - Hold 1<br>Gruppe 3 - Hold 2<br>Gruppe 4 - Hold 3</i></td>
    </tr>
  </table>
  <br>
<a href="overview.asp">Tilbage til oversigten</a>
</form>

<%
End if
closeConn()
%>
Avatar billede kovalt Nybegynder
12. april 2004 - 18:17 #1
<!-- #include file="conn.asp" -->
<link rel="stylesheet" type="text/css" href="style.css">
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "addnew" Then

strUserid    = Request.Form("userid")
strUser        = replace(Request.Form("username")&"","'","''")

SQL2 = "SELECT Userid, Username FROM Users WHERE Username=" & strUser
Set rs2 = connection.Execute(SQL2)

if strUser = rs2("Username") Then
strErr = "Brugernavnet eksisterer allerede"
Else
strUsername    = replace(Request.Form("username")&"","'","''")
End if
strPassword    = replace(Request.Form("password")&"","'","''")
strFullname    = replace(Request.Form("fullname")&"","'","''")
if len(Request.Form("redirect")) = 0 then
strRedirect    = "error.asp"
Else
strRedirect    = replace(Request.Form("redirect")&"","'","''")
end if
strLastlogin    = Request.Form("lastlogin")
strLogintimes    = replace(Request.Form("logintimes")&"","'","''")
strGroup    = replace(Request.Form("group")&"","'","''")

strSQL = "INSERT INTO Users ("
               
    strSQL = strSQL & "[Username], "   
    strSQL = strSQL & "[Password], "
    strSQL = strSQL & "[Fullname], "
    strSQL = strSQL & "[Redirect], "
    strSQL = strSQL & "Lastlogin, "
    strSQL = strSQL & "Logintimes, "
    strSQL = strSQL & "[Group]) "

    strSQL = strSQL & "values ("

    strSQL = strSQL & "'" & strUsername & "', "
    strSQL = strSQL & "'" & strPassword & "', "
    strSQL = strSQL & "'" & strFullname & "', "
    strSQL = strSQL & "'" & strRedirect & "', "
    strSQL = strSQL & "'" & Now & "', "
    strSQL = strSQL & "'" & 0 & "', "
    strSQL = strSQL & "'" & strGroup & "')"

    connection.Execute(strSQL)
%>

<h2>Brugeren er nu oprettet!</h2><br>
<a href="overview.asp">Tilbage til oversigten</a>
<%
Else
%>
<form method="post" action="adduser.asp?cmd=addnew">
  <table>
    <tr>
      <td colspan="2">Brugernavn:<br>
        <input type="text" name="username" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Adgangskode:<br>
        <input type="text" name="password" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Fuldt navn:<br>
        <input type="text" name="fullname" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Videresend:<br>
        <input type="text" name="redirect" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td valign="top" width="120">Gruppe:<br>
        <input type="text" name="group" class="input"><br><br><br><input type="submit" value="Opret" class="knap">
        <br>
        <br></td>
      <td valign="top"><i>Vælg mellem 1-4:<br>Gruppe 1 - Administrator<br>Gruppe 2 - Hold 1<br>Gruppe 3 - Hold 2<br>Gruppe 4 - Hold 3</i></td>
    </tr>
  </table>
  <br>
<%=strErr%>
<a href="overview.asp">Tilbage til oversigten</a>
</form>

<%
End if
closeConn()
%>



Min kode før redigering:

<!-- #include file="conn.asp" -->
<link rel="stylesheet" type="text/css" href="style.css">
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "addnew" Then

strUserid    = Request.Form("userid")
strUsername    = replace(Request.Form("username")&"","'","''")
strPassword    = replace(Request.Form("password")&"","'","''")
strFullname    = replace(Request.Form("fullname")&"","'","''")
if len(Request.Form("redirect")) = 0 then
strRedirect    = "error.asp"
Else
strRedirect    = replace(Request.Form("redirect")&"","'","''")
end if
strLastlogin    = Request.Form("lastlogin")
strLogintimes    = replace(Request.Form("logintimes")&"","'","''")
strGroup    = replace(Request.Form("group")&"","'","''")

strSQL = "INSERT INTO Users ("
               
    strSQL = strSQL & "[Username], "   
    strSQL = strSQL & "[Password], "
    strSQL = strSQL & "[Fullname], "
    strSQL = strSQL & "[Redirect], "
    strSQL = strSQL & "Lastlogin, "
    strSQL = strSQL & "Logintimes, "
    strSQL = strSQL & "[Group]) "

    strSQL = strSQL & "values ("

    strSQL = strSQL & "'" & strUsername & "', "
    strSQL = strSQL & "'" & strPassword & "', "
    strSQL = strSQL & "'" & strFullname & "', "
    strSQL = strSQL & "'" & strRedirect & "', "
    strSQL = strSQL & "'" & Now & "', "
    strSQL = strSQL & "'" & 0 & "', "
    strSQL = strSQL & "'" & strGroup & "')"

    connection.Execute(strSQL)
%>

<h2>Brugeren er nu oprettet!</h2><br>
<a href="overview.asp">Tilbage til oversigten</a>
<%
Else
%>
<form method="post" action="adduser.asp?cmd=addnew">
  <table>
    <tr>
      <td colspan="2">Brugernavn:<br>
        <input type="text" name="username" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Adgangskode:<br>
        <input type="text" name="password" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Fuldt navn:<br>
        <input type="text" name="fullname" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Videresend:<br>
        <input type="text" name="redirect" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td valign="top" width="120">Gruppe:<br>
        <input type="text" name="group" class="input"><br><br><br><input type="submit" value="Opret" class="knap">
        <br>
        <br></td>
      <td valign="top"><i>Vælg mellem 1-4:<br>Gruppe 1 - Administrator<br>Gruppe 2 - Hold 1<br>Gruppe 3 - Hold 2<br>Gruppe 4 - Hold 3</i></td>
    </tr>
  </table>
  <br>
<a href="overview.asp">Tilbage til oversigten</a>
</form>

<%
End if
closeConn()
%>
Avatar billede babyworm Nybegynder
12. april 2004 - 18:20 #2
Det virker ikke.. hvad har du ændret?
Avatar billede kovalt Nybegynder
12. april 2004 - 18:23 #3
if strUsername = rs2("Username") Then

til

if strUser = rs2("Username") Then
Avatar billede babyworm Nybegynder
12. april 2004 - 18:24 #4
Det virkede ikke...

den skriver:
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1.
/workspace/log/adduser.asp, line 14
Avatar billede kovalt Nybegynder
12. april 2004 - 18:33 #5
det er en fejl i din SQL-sætning

SQL2 = "SELECT Userid, Username FROM Users WHERE Username= '" & strUser
Set rs2 = connection.Execute(SQL2)
Avatar billede kovalt Nybegynder
12. april 2004 - 18:33 #6
du mangler ' idet username er et tekstfelt
Avatar billede babyworm Nybegynder
12. april 2004 - 18:36 #7
HEh...

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i strengen i forespørgselsudtrykket "Username= 're".
/workspace/log/adduser.asp, line 14
Avatar billede kovalt Nybegynder
12. april 2004 - 18:38 #8
SQL2 = "SELECT Userid, Username FROM Users WHERE Username= '" & strUser &"'"
Set rs2 = connection.Execute(SQL2)
Avatar billede babyworm Nybegynder
12. april 2004 - 18:39 #9
Fejltype:
(0x80020009)
Undtagelse opstod.
/workspace/log/adduser.asp, line 16
Avatar billede kovalt Nybegynder
12. april 2004 - 18:39 #10
hvad er linie 16?
Avatar billede babyworm Nybegynder
12. april 2004 - 18:43 #11
if strUser = rs2("Username") Then
Avatar billede kovalt Nybegynder
12. april 2004 - 18:47 #12
prøv at sætte dette ind i stedet for det du har:

SQL2 = "SELECT Userid, Username FROM Users WHERE Username=" & strUser
Set rs2 = connection.Execute(SQL2)

if rs2.EOF then
  strDBUsername = ""
else
  strDBUsername = rs2("Username")
end if

if strUser = strDBUsername Then
Avatar billede babyworm Nybegynder
12. april 2004 - 19:23 #13
Fejltype:
Der opstod en Microsoft VBScript-kompileringsfejl (0x800A03F6)
'End' var ventet
/workspace/log/adduser.asp, line 109
Avatar billede babyworm Nybegynder
12. april 2004 - 19:24 #14
Min kode nu:

<!-- #include file="conn.asp" -->
<link rel="stylesheet" type="text/css" href="style.css">
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "addnew" Then

strUserid    = Request.Form("userid")
strUser        = replace(Request.Form("username")&"","'","''")

SQL2 = "SELECT Userid, Username FROM Users WHERE Username=" & strUser
Set rs2 = connection.Execute(SQL2)

if rs2.EOF then
  strDBUsername = ""
else
  strDBUsername = rs2("Username")
end if

if strUser = strDBUsername Then

if strUser = rs2("Username") Then
strErr = "Brugernavnet eksisterer allerede"
Else
strUsername    = replace(Request.Form("username")&"","'","''")
End if
strPassword    = replace(Request.Form("password")&"","'","''")
strFullname    = replace(Request.Form("fullname")&"","'","''")
if len(Request.Form("redirect")) = 0 then
strRedirect    = "error.asp"
Else
strRedirect    = replace(Request.Form("redirect")&"","'","''")
end if
strLastlogin    = Request.Form("lastlogin")
strLogintimes    = replace(Request.Form("logintimes")&"","'","''")
strGroup    = replace(Request.Form("group")&"","'","''")

strSQL = "INSERT INTO Users ("
               
    strSQL = strSQL & "[Username], "   
    strSQL = strSQL & "[Password], "
    strSQL = strSQL & "[Fullname], "
    strSQL = strSQL & "[Redirect], "
    strSQL = strSQL & "Lastlogin, "
    strSQL = strSQL & "Logintimes, "
    strSQL = strSQL & "[Group]) "

    strSQL = strSQL & "values ("

    strSQL = strSQL & "'" & strUsername & "', "
    strSQL = strSQL & "'" & strPassword & "', "
    strSQL = strSQL & "'" & strFullname & "', "
    strSQL = strSQL & "'" & strRedirect & "', "
    strSQL = strSQL & "'" & Now & "', "
    strSQL = strSQL & "'" & 0 & "', "
    strSQL = strSQL & "'" & strGroup & "')"

    connection.Execute(strSQL)
%>

<h2>Brugeren er nu oprettet!</h2><br>
<a href="overview.asp">Tilbage til oversigten</a>
<%
Else
%>
<form method="post" action="adduser.asp?cmd=addnew">
  <table>
    <tr>
      <td colspan="2">Brugernavn:<br>
        <input type="text" name="username" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Adgangskode:<br>
        <input type="text" name="password" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Fuldt navn:<br>
        <input type="text" name="fullname" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Videresend:<br>
        <input type="text" name="redirect" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td valign="top" width="120">Gruppe:<br>
        <input type="text" name="group" class="input"><br><br><br><input type="submit" value="Opret" class="knap">
        <br>
        <br></td>
      <td valign="top"><i>Vælg mellem 1-4:<br>Gruppe 1 - Administrator<br>Gruppe 2 - Hold 1<br>Gruppe 3 - Hold 2<br>Gruppe 4 - Hold 3</i></td>
    </tr>
  </table>
  <br>
<%=strErr%>
<a href="overview.asp">Tilbage til oversigten</a>
</form>

<%
End if
closeConn()
%>
Avatar billede montago Praktikant
13. april 2004 - 16:05 #15
<!-- #include file="conn.asp" -->
<link rel="stylesheet" type="text/css" href="style.css">
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "addnew" Then

strUserid    = Request.Form("userid")
strUser        = replace(Request.Form("username")&"","'","''")

SQL2 = "SELECT Userid, Username FROM Users WHERE Username=" & strUser & "'"
Set rs2 = connection.Execute(SQL2)

if rs2.EOF then
  strDBUsername = ""
else
  strDBUsername = rs2("Username")
end if

if strUser = strDBUsername Then
strErr = "Brugernavnet eksisterer allerede"
Else
strUsername    = replace(Request.Form("username")&"","'","''")
End if
strPassword    = replace(Request.Form("password")&"","'","''")
strFullname    = replace(Request.Form("fullname")&"","'","''")
if len(Request.Form("redirect")) = 0 then
strRedirect    = "error.asp"
Else
strRedirect    = replace(Request.Form("redirect")&"","'","''")
end if
strLastlogin    = Request.Form("lastlogin")
strLogintimes    = replace(Request.Form("logintimes")&"","'","''")
strGroup    = replace(Request.Form("group")&"","'","''")

strSQL = "INSERT INTO Users ("
               
    strSQL = strSQL & "[Username], "   
    strSQL = strSQL & "[Password], "
    strSQL = strSQL & "[Fullname], "
    strSQL = strSQL & "[Redirect], "
    strSQL = strSQL & "Lastlogin, "
    strSQL = strSQL & "Logintimes, "
    strSQL = strSQL & "[Group]) "

    strSQL = strSQL & "values ("

    strSQL = strSQL & "'" & strUsername & "', "
    strSQL = strSQL & "'" & strPassword & "', "
    strSQL = strSQL & "'" & strFullname & "', "
    strSQL = strSQL & "'" & strRedirect & "', "
    strSQL = strSQL & "'" & Now & "', "
    strSQL = strSQL & "'" & 0 & "', "
    strSQL = strSQL & "'" & strGroup & "')"

    connection.Execute(strSQL)
%>

<h2>Brugeren er nu oprettet!</h2><br>
<a href="overview.asp">Tilbage til oversigten</a>
<%
Else
%>
<form method="post" action="adduser.asp?cmd=addnew">
  <table>
    <tr>
      <td colspan="2">Brugernavn:<br>
        <input type="text" name="username" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Adgangskode:<br>
        <input type="text" name="password" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Fuldt navn:<br>
        <input type="text" name="fullname" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td colspan="2">Videresend:<br>
        <input type="text" name="redirect" class="input">
        <br>
        <br></td>
    </tr>
    <tr>
      <td valign="top" width="120">Gruppe:<br>
        <input type="text" name="group" class="input"><br><br><br><input type="submit" value="Opret" class="knap">
        <br>
        <br></td>
      <td valign="top"><i>Vælg mellem 1-4:<br>Gruppe 1 - Administrator<br>Gruppe 2 - Hold 1<br>Gruppe 3 - Hold 2<br>Gruppe 4 - Hold 3</i></td>
    </tr>
  </table>
  <br>
<%=strErr%>
<a href="overview.asp">Tilbage til oversigten</a>
</form>

<%
End if
closeConn()
%>
Avatar billede babyworm Nybegynder
29. juni 2004 - 15:45 #16
takker :)
Avatar billede montago Praktikant
29. juni 2004 - 15:50 #17
ehh... jeg kan overovedet ikke huske at have svaret på det her spørgmål
:-/ ???

men fair nok ;-)
Avatar billede babyworm Nybegynder
29. juni 2004 - 16:45 #18
Hehe.... :)
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