webForumDet fria alternativet

Problem med if-sats

ASPur ASP

1 svar · 215 visningar · startad av scoxi

scoxiMedlem sedan jan. 200460 inlägg
#1
<%

username = Request.Form("username")
password1 = Request.Form("password1")
password2 = Request.Form("password2")

If username = "" OR password1 = "" OR password2 = "" Then

%>
<font color="red" face="verdana" size="1"><b>Du måste fylla i alla fält</b></font>

<%
else

'Öppnar databasen
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\test\anvandare.mdb"

sql = "select count(username) where username = '" & username & "'"
Set rs = conn.execute(sql)
if rs(0) then response.write "upptaget"
'användarnamnet finns, skicka tebax
conn.close
else

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\test\anvandare.mdb"

Add = "INSERT INTO anvandare (username, password) VALUES ( '" & username & "', '" & password1 & "' )"

Conn.Execute(Add)

Conn.Close

Response.Redirect("login.asp")

%> 

<font color="green" face="verdana" size="1"><b>Du är nu medlem. Klicka <a href="login.asp">här</a> för att logga in</b></font>

<%

End if
end if

%>

Felmeddelande

Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03F6)
'End' förväntas.
/test/regcheck.asp, line 38
else

Allt funkade prima tills jag skulle försöka få den att kolla så att användaren inte redan finns i databasen..

@ndersMedlem sedan juni 200032 969 inlägg
#2

Eftersom du har skrivit

if rs(0) then response.write "upptaget"

så fortsätter inte if-blocket. Byt till:

if rs(0) then
response.write "upptaget"

Dessutom; indentera din kod, så blir det lättare att läsa, och följa de olika kodstyckena.

mvh

130 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)