webForumDet fria alternativet

Skrivskydd

7 svar · 203 visningar · startad av Mika3l

Mika3lMedlem sedan nov. 20018 492 inlägg
#1

Hej!
Jag håller på med ett litet meddelandesystem.
Jag har provat att skicka ett meddelande men jag får ett felmeddelande att det inte går att uppdatera databasen p.g.a att den är skrivskyddad.
Men det är inte skrivskyddad!
Körde då med rs.AddNew...rs.Update(gammal modell) men innan det så provade jag en INSERT kod.
Men då fick jag ett felmeddelande direkt;
Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A0400)
Programsats förväntas.
/ingenjorerna/skrivmess.asp, line 9
"INSERT INTO mess (fran, till, rubrik, mess, datum, last) VALUES('" & Session("user") & "','" & Request.Form("till") & "','" & Request.Form("rubrik") & "','" & Request.Form("mess") & "', now(), False)"

Kod

"INSERT INTO mess (fran, till, rubrik, mess, datum, last) VALUES('" & Session("user") & "','" & Request.Form("till") & "','" & Request.Form("rubrik") & "','" & Request.Form("mess") & "', now(), False)"

Tacksam för svar!

/Mika3l

------------------
Laddar... ;-)

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Hur ser hela koden ut? Du behöver göra execute.

connect.execute "INSERT INTO mess (fran, till, rubrik, mess, datum, [last]) VALUES('" & Session("user") & "','" & Request.Form("till") & "','" & Request.Form("rubrik") & "','" & Request.Form("mess") & "', now(), False)",,128

du lär också få problem med ordet last som är ett reserverat ord i SQL. Man kan skriva det inom [] så skall det gå bra.

------------------
essentitia preter non sans multiplicandum

Mika3lMedlem sedan nov. 20018 492 inlägg
#3

Jag skickar hela sidan.

<!-- #Include file="check.asp" -->
<%
If Request.Form("skriv") = "true" Then
If Request.Form("till") = "" Then
Response.Write"<script language=javascript>alert('Du måste välja till vilken medlem meddelandet ska skickas!\n\nKlicka på Bakåt/Back i din webbläsare och välj medlem.')</script>"
Else
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("mess.mdb")
"INSERT INTO mess (fran, till, rubrik, mess, datum, last) VALUES('" & Session("user") & "','" & Request.Form("till") & "','" & Request.Form("rubrik") & "','" & Request.Form("mess") & "', now(), False)"
Connection.Execute(SQL)
Set Connection = Nothing
Response.Write"<script language=javascript>alert('Meddelandet är skickat!')</script>"
Response.Redirect"skrivmess.asp"
End If
End If
%>
<html>
<head>
<title>Skriv meddelande</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>

<center><strong>Skriv meddelande</strong></center>
<br>
<form method="post" action="skrivmess.asp">
<table align="center" cellpadding="2">
 <tr>
  <td>
<font color="#000000">
Till:
</font>
  </td>
  <td>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; dbq=" & Server.MapPath("members.mdb")
Set rst = Conn.Execute("SELECT user FROM members ORDER BY user")
%>
<select name="till">
<option value=""> -- Välj medlem -- </option>
<option value="">--------------------------</option>
<% Do Until rst.EOF %>
<option value="<%=rst("user")%>"><%=rst("user")%></option>
<%
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
Conn.Close
Set Conn = Nothing
%>
  </td>
 </tr>
 <tr>
  <td>
<font color="#000000">
Rubrik:
</font>
  </td>
  <td>
<input type="text" name="rubrik" maxlength="70">
  </td>
 </tr>
</table>
<center>
Meddelande:<br>
<textarea name="mess" rows="13" cols="50" maxlength="4000"></textarea>
<br><br>
<input type="hidden" name="skriv" value="true">
<input type="submit" value="  Skicka!  ">
&nbsp;&nbsp;&nbsp;
<input type="reset" value="  Rensa  ">
</form>
</center>

</body>
</html>

/Mika3l

------------------
Laddar... ;-)

LarsGMedlem sedan dec. 200012 464 inlägg
#4
Connection.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("mess.mdb")
[b]sql = [/b]"INSERT INTO mess (fran, till, rubrik, mess, datum, [last]) VALUES('" & Session("user") & "','" & Request.Form("till") & "','" & Request.Form("rubrik") & "','" & Request.Form("mess") & "', now(), False)"
Connection.Execute SQL

------------------
essentitia preter non sans multiplicandum

Mika3lMedlem sedan nov. 20018 492 inlägg
#5

Dumma lilla mig, glömde skriva SQL = framför, ska prova...
Loggar in...
Går till inkorgen...
Går till skriv meddelande...
Skriver...
Skickar...

Nej!
Jag fick ett felmeddelande!
Det ser ut så här:

Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Drivrutin för ODBC Microsoft Access] Operationen måste använda en fråga som kan uppdateras.
/ingenjorerna/skrivmess.asp, line 10

Koden ser nu ut så här:

<!-- #Include file="check.asp" -->
<%
If Request.Form("skriv") = "true" Then
If Request.Form("till") = "" Then
Response.Write"<script language=javascript>alert('Du måste välja till vilken medlem meddelandet ska skickas!\n\nKlicka på Bakåt/Back i din webbläsare och välj medlem.')</script>"
Else
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("mess.mdb")
SQL = "INSERT INTO mess (fran, till, rubrik, mess, datum, last) VALUES('" & Session("user") & "','" & Request.Form("till") & "','" & Request.Form("rubrik") & "','" & Request.Form("mess") & "', now(), False)"
Connection.Execute(SQL) ///rad 10[/red]
Set Connection = Nothing
Response.Write"<script language=javascript>alert('Meddelandet är skickat!')</script>"
Response.Redirect"skrivmess.asp"
End If
End If
%>

/Mika3l

------------------
Laddar... ;-)

jorgenMedlem sedan feb. 20012 412 inlägg
#6

Hej!

Låter som du inte har tillräckliga rättigheter.
http://cgi.webforum.nu/wf/Forum11/HTML/001680.html

Sedan är datum ett reserverat ord i access, prova skriv [datum]

mvh Jörgen :)

------------------
Varför bråka när man kan kramas?

[Redigerat av jorgen den 22 nov 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#7

Då är det problem med rättigheterna på den katalog där databasen ligger.

IUSR_<servernamn> måste ha rxwd

Det här har varit uppe tidigare så du kan ju söka på updatable query så lär du hitta några trådar.

------------------
essentitia preter non sans multiplicandum

Mika3lMedlem sedan nov. 20018 492 inlägg
#8

Tack!
Nu fungerar det!

/Mika3l

------------------
Laddar... ;-)

131 ms totalt · 3 externa anrop · v20260731065814-full.7de19299
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)