webForumDet fria alternativet

hur ska det vara

ASP

7 svar · 275 visningar · startad av jwradhe

Medlem sedan juni 2002711 inlägg
Frågan#1

jag har en kod som ska lägga till en användare i databasen men det blir fel..och vad jag ändrar på eller tar bort så blir det fel.

här e koden

<html>

<head>
<%
If Request.Form("pass2") = Request.Form("pass2") then 
%>

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("forum.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")
%>

<%
	Addera = "SELECT * FROM users"
	RecSet.Open Addera, Connect, 3, 3
	
	Do Until RecSet.EOF
	If UCase(Request.Form("user")) = UCase(RecSet("userName")) Then
	%>
		<meta http-equiv="refresh" content="3;URL=registrera.asp">
		<title>Registering user</title>
		</head>

		<body>
		<p align="center"><font face="Verdana" size="2">Anvndarnamnet var upptaget... du är <b>inte</b> registrerad...
        </font></p>
		</body>

		</html>
		<% RecSet.MoveNext
		loop
		RecSet.Close
							<%
			else
	
	RecSet.AddNew
	RecSet("userName") = Replace(Replace(Request.Form("user"),"<",""),">","")
	RecSet("realname") = Replace(Replace(Request.Form("name"),"<",""),">","")
	RecSet("userpass") = Request.Form("pass1")
	RecSet("userEmail") = Request.Form("mail")
	RecSet("userRegistred") = Date
	RecSet("userInlagg") = 0
	RecSet("title") = "Medlem"
	RecSet.Update
	RecSet.Close
Connect.Close
Set Connect = nothing

%>

		<meta http-equiv="refresh" content="2;URL=forum.asp">
		<title>Registering user</title>
		</head>

		<body>
<p align="center"><font face="Verdana" size="2"><b>Anvndaren registrerad...</b><br><br></font>
<font face="Verdana">Välkommen till forumet!</font></p>
		</body>

		</html>

<%
 end if
else
%>

		<meta http-equiv="refresh" content="3;URL=registrera.asp">
		<title>Registering user</title>
		</head>

		<body>
<p align="center"><font face="Verdana" size="2">Felaktiga uppgifter... anvndare <b>INTE</b> registrerad...</font></p>
		</body>

		</html>

<%
end If
%>
Medlem sedan dec. 200012 464 inlägg
#2
<html>

<head>
<%
If Request.Form("userpass") = Request.Form("pass2") then 
   Set Connect = Server.CreateObject("ADODB.Connection")
   Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("forum.mdb")
   Set RecSet = Server.CreateObject("ADODB.Recordset")
   user = "'" & replace(request.form("user"),"'","''") & "'"
   Addera = "SELECT 1 FROM users where username = " & user
   RecSet.Open Addera, Connect, 3, 3
   
   if not recset.eof then
        recset.close
        connect.close
%>
	<meta http-equiv="refresh" content="3;URL=registrera.asp">
	<title>Registering user</title>
	</head>

	<body>
	<p align="center"><font face="Verdana" size="2">Anvndarnamnet var upptaget... du är <b>inte</b> registrerad...
        </font></p>
	</body>
	</html>
<%
    else
	RecSet.AddNew
	RecSet("userName") = Replace(Replace(Request.Form("user"),"<",""),">","")
	RecSet("realname") = Replace(Replace(Request.Form("name"),"<",""),">","")
	RecSet("userpass") = Request.Form("pass1")
	RecSet("userEmail") = Request.Form("mail")
	RecSet("userRegistred") = Date
	RecSet("userInlagg") = 0
	RecSet("title") = "Medlem"
	RecSet.Update
	RecSet.Close
        Connect.Close
	Set Connect = nothing
%>
	<meta http-equiv="refresh" content="2;URL=forum.asp">
	<title>Registering user</title>
	</head>

	<body>
	<p align="center"><font face="Verdana" size="2"><b>Anvndaren registrerad...</b><br><br></font>
	<font face="Verdana">Välkommen till forumet!</font></p>
	</body>

	</html>
<%
    end if
else
%>
	<meta http-equiv="refresh" content="3;URL=registrera.asp">
	<title>Registering user</title>
	</head>

	<body>
	<p align="center"><font face="Verdana" size="2">Felaktiga uppgifter... anvndare <b>INTE</b> registrerad...</font></p>
	</body>

	</html>
<%
end If
%>

Om du får något felmedelande, ta med det och visa vilken rad som orsakar felet.

Medlem sedan juni 2002711 inlägg
#3
Feltyp:
Microsoft JET Database Engine (0x80040E09)
Det går inte att uppdatera. Databasen eller objektet är skrivskyddat.
/sp forum/registrera2.asp, line 28

line 28

RecSet.AddNew
Medlem sedan juni 2002711 inlägg
#4

hmm..=?

Medlem sedan mars 20025 907 inlägg
#5

Är databasen skrivskyddad? Har du behörighet att skriva till mappen där databasen ligger?

Medlem sedan juni 2002711 inlägg
#6

mm

Medlem sedan juni 2002711 inlägg
#7

får

Microsoft JET Database Engine error '80040e09' 

Cannot update. Database or object is read-only. 

/jwradhe/registrera2.asp, line 28

nu

Medlem sedan juni 2002711 inlägg
#8

nu har det fixat sig.

skrev

Addera = "SELECT * FROM users where username = " & user

stället för

Addera = "SELECT 1 FROM users where username = " & user
260 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)