---
title: "Förbannade INSERT!!!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/13356-förbannade-insert"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Mika3l"
published: "2001-12-22T22:30:00.000Z"
updated: "2001-12-25T21:07:00.000Z"
replies: 12
views: 287
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/13356-förbannade-insert"
---

# Förbannade INSERT!!!

## #1 — Mika3l, 2001-12-22T22:30Z

Varför får jag felmeddelandet
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
\[Microsoft\]\[Drivrutin för ODBC Microsoft Access\] Typblandningsfel i villkorsuttryck.
forum.asp, line 188

forum.asp(har inte gjort så mycket):

```
<%
Response.Buffer = True
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Driver={Microsoft Access Driver (*.mdb)}; dbq=" & Server.MapPath("forum")
%>
<html>
<head>
<title>Forum</title>
<link rel="stylesheet" type="text/css" href="style.css">
<script language="javascript">
function kollaform()   {
var namn = document.form.av.value;
if(namn.length == 0) {
alert("Inget inlägg utan namn..."); return false;
}
var rubrik = document.form.rubrik.value;
if(rubrik.length == 0) {
alert("Ditt inlägg måste ha en rubrik!"); return false;
}
var inlagg = document.form.inlagg.value;
if(inlagg.length == 0) {
alert("Du måste skriva ett inlägg!"); return false;
}
}
</script>
</head>
<body>

<center><img src="images/forum.jpg" alt="   FORUM   " border="0"></center>
<br>

<table align="center" width="750" cellspacing="0" cellpadding="2" class="border">
 <tr>
  <td>

<% If Request.QueryString("page") = "" Then %>

<table width="750">
 <tr>
  <td width="255">
<strong>Rubrik</strong>
  </td>
  <td width="235">
<strong>Av</strong>
  </td>
  <td width="150">
<strong>Datum:</strong>
  </td>
  <td width="80">
<strong>Svar</strong>
  </td>
 </tr>
<%
MyPage = Request("nextpage")
If MyPage = "" then
MyPage = 1
End If
MyPagesize = 25
SQL = "SELECT IID, rubrik, av, datum, svar FROM data WHERE svar = False ORDER BY IID DESC"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = 3
rs.CacheSize = 5
rs.open SQL, Connection
If rs.EOF OR rs.BOF Then
Response.Write"</td></tr></table>"
Response.Write"<center><font class=orange><strong>Det finns inga inlägg i forumet!</strong></font></center>"

Else
rs.MoveFirst
rs.PageSize = MyPageSize
MaxCount = Cint(rs.PageCount)
rs.AbsolutePage = MyPage
HowManyRecs = 0
HowManyFields = rs.Fields.Count -1

Do While Not rs.EOF AND HowManyRecs < rs.PageSize
Counter = Counter + 1
%>
<tr>
 <td width="255">
<a href="forum.asp?page=read&IID=<%=rs("IID")%>"><%=rs("rubrik")%></a>
  </td>
  <td width="235">
<%=rs("av")%>
  </td>
  <td width="150">
<%=rs("datum")%>
  </td>
  <td>
<%=rs("antalsvar")%>
  </td>
 </tr>
<%
rs.MoveNext
HowManyRecs = HowManyRecs + 1
Response.Write "<!--			##### Nästa #####			-->"
Loop
rs.Close
Set rs = Nothing
%>
</table>
<center>
<%
If MaxCount <> 0 Then
Response.Write "Du är på sida " & mypage & " av " & maxcount & ".<br>"
pad = "0"
for counter = 1 to maxcount
If counter >= 10 then
pad = ""
End If
ref = "  <a href=forum.asp?nextpage=" & counter & "&pagesize=" & mypagesize & ">" & pad & counter & "</a>  "
Response.Write ref & ""
If Counter mod 10 = 0 Then
Response.Write "<br>"
End If
Next
End If
End If
%>
</center>

<hr class="gron" noshade size="1">

<center><strong>Skriv nytt inlägg</strong></center>
<form name="form" method="post" action="forum.asp?page=infoga" onsubmit="return kollaform()">
<table align="center" cellpadding="2">
 <tr>
  <td>
Ditt namn:
  </td>
  <td>
<input type="text" name="av" maxlength="50">
  </td>
 </tr>
 <tr>
  <td>
Din email:
  </td>
  <td>
<input type="text" name="email" maxlength="50">
  </td>
 </tr>
 <tr>
  <td>
Rubrik:
  </td>
  <td>
<input type="text" name="rubrik" maxlength="50">
  </td>
 </tr>
 <tr>
  <td valign="top">
Inlägg:
  </td>
  <td>
<textarea name="inlagg" rows="12" cols="40"></textarea>
  </td>
 </tr>
</table>
<input type="hidden" name="svar" value="False">
<input type="hidden" name="svartill" value="0">
<input type="hidden" name="antalsvar" value="0">
<center>
<input type="submit" value="  Skicka!  ">
   
<input type="reset" value="  Sudda  ">
</center>
</form>

<% ElseIf Request.QueryString("page") = "infoga" Then
If Request.Form("svar") = True Then
SQL1 = "UPDATE data SET antalsvar = antalsvar +1 WHERE IID = " & Request.Form("svartill") & ""
Connection.Exeucte(SQL1)
End If
rubrik = Trim(Request.Form("rubrik"))
inlagg = Trim(Request.Form("inlagg"))
av = Trim(Request.Form("av"))
email = Trim(Request.Form("email"))
datum = now()
svar = Request.Form("svar")
antalsvar = Request.Form("antalsvar")
svartill = Request.Form("svartill")
SQL2 = "INSERT INTO data (rubrik, inlagg, av, email, datum, svar, antalsvar, svartill) VALUES ('" & rubrik & "','" & inlagg & "','" & av & "','" & email & "','" & datum & "','" & svar & "'," & antalsvar & "," & svartill & ")"
Connection.Execute(SQL2) /// RAD 188!!![/red]
Response.Redirect"forum.asp"
%>

<% Else
Response.Redirect"forum.asp"
End If %>

  </td>
 </tr>
</table>

</body>
</html>

<%
Connection.Close
Set Connection = Nothing
%>
```

Eftersom det blir fel när servern ska "executa" så är det säkerligen problem med INSERT satsen på raden över...

Tacksam för svar!

/Mika3l

PS.Ursäkta svärordet :p .DS

Permalänk: https://www.webforum.nu/p/13356

## #2 — aleborg, 2001-12-22T22:37Z

Vilken databas?
Om du använder access så har jag för mig att du inte ska ha fnuttar runt datum om det är ett datum fält! MySql ska du däremot ha det på!

Permalänk: https://www.webforum.nu/p/301591

## #3 — icaaq, 2001-12-22T22:41Z

```
SQL2 = "INSERT INTO data (rubrik, inlagg, av, email, [datum], svar, antalsvar, svartill) VALUES ('" & rubrik & "','" & inlagg & "','" & av & "','" & email & "',#" & datum & "#,'" & svar & "'," & antalsvar & "," & svartill & ")"
Connection.Execute(SQL2),,128 ' /// RAD 188!!!
```

Jag gjorde så att jag klammrade datum för att jag tror det är ett namnskyddat ord i access, sen gjorde jag även som aleborg sa att jag hade in datumet inom brädgårdar(#)... hoppas det hjälper :)

/Red. Jag la även till ,,128 som gör så att det inte produceras något recordset av Execute kommandot.

Permalänk: https://www.webforum.nu/p/301592

## #4 — aleborg, 2001-12-22T22:45Z

är datum ett reserverat ord? Trodde att det var Date som var reserverat, har M$ börjat ha svenska även i programeringen???

Permalänk: https://www.webforum.nu/p/301593

## #5 — icaaq, 2001-12-22T22:53Z

<http://cgi.webforum.nu/wf/Forum11/HTML/004742.html> 

jag vet inte om det stämmer men det kan ju vara det som är felet....bäst att ta det säkra...

Permalänk: https://www.webforum.nu/p/301594

## #6 — Mika3l, 2001-12-22T23:07Z

Hmmm...
Det fungerade inte med din kod icaaq :(
Får samma felmeddelande igen...
Jag använder en Accessdatabas(som du kan se på databaskopplingen).

/Mika3l

Permalänk: https://www.webforum.nu/p/301595

## #7 — icaaq, 2001-12-22T23:10Z

om du skriver:

```
SQL2 = "INSERT INTO data (rubrik, inlagg, av, email, [datum], svar, antalsvar, svartill) VALUES ('" & rubrik & "','" & inlagg & "','" & av & "','" & email & "',#" & datum & "#,'" & svar & "'," & antalsvar & "," & svartill & ")"
Response.Write SQL2
Response.End
Connection.Execute(SQL2),,128 ' /// RAD 188!!!
```

Vad får du då ?

Permalänk: https://www.webforum.nu/p/301596

## #8 — icaaq, 2001-12-22T23:58Z

```
SQL2 = "INSERT INTO data(rubrik,"&_
" inlagg,"&_
" av,"&_
" email,"&_
" [datum],"&_
" svar,"&_
" antalsvar,"&_
" svartill)"&_
" VALUES('" & rubrik & "',"&_
" '" & inlagg & "',"&_
" '" & av & "',"&_
" '" & email & "',"&_
" #" & datum & "#,"&_
" '" & svar & "',"&_
" " & antalsvar & ","&_
" '" & svartill & "')"
Connection.Execute(SQL2),,128 ' /// RAD 188!!!
```

Om inte denna fungerar så får du skriva vad för fält typer alla fält har...

Permalänk: https://www.webforum.nu/p/301597

## #9 — Mika3l, 2001-12-23T10:29Z

Koden fungerade inte, fick samma felmeddelande :(

forum.mdb

IID &#0124; AutoNumber(Primary Key)
rubrik &#0124; text
inlagg &#0124; PM/Memo
av &#0124; text
email &#0124; text
datum &#0124; Date/Time
svar &#0124; Yes/No
antalsvar &#0124; Number
svartill &#0124; Number

Så ser databasen ut.
Kan det vara något med email måntro...?

/Mika3l

Permalänk: https://www.webforum.nu/p/301598

## #10 — @nders, 2001-12-23T10:34Z

I Access:
Datumvärden omges med brädgård, så långt allt ok.
Text/PM/Memo-värden skall du omge med apostrofer. Det har du gjort.
Tal skall inte omges av någonting. Varför har du apostrofer runt Svartill? Det är ett talfält, och skall inte ha apostrofer.

Sedan funderar jag över ditt Yes/No fält. Hur ser värdet du vill stoppa in där ut?

Jag tror att den förväntar sig antingen **True** eller **False**, utan apostrofer runt värdet.

Mvh,

Permalänk: https://www.webforum.nu/p/301599

## #11 — Mika3l, 2001-12-23T16:09Z

Japp, jag ska ha True samt False i svar fältet.
Jag får ta bort lite apostrofer och kolla om det fungerar!

/Mika3l

Permalänk: https://www.webforum.nu/p/301600

## #12 — Mika3l, 2001-12-25T20:59Z

Nej, det vill inte fungera nu heller x(
Jag får felmeddelandet Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
\[Microsoft\]\[Drivrutin för ODBC Microsoft Access\] Syntaxfel (operator saknas) i frågeuttrycket '2001-12-25 21:56:32'.
forum.asp, line 188

forum.asp
\-----------
\[kod\]
rubrik = Trim(Request.Form("rubrik"))
inlagg = Trim(Request.Form("inlagg"))
av = Trim(Request.Form("av"))
email = Trim(Request.Form("email"))
datum = now()
svar = Request.Form("svar")
antalsvar = Request.Form("antalsvar")
svartill = Request.Form("svartill")
SQL2 = "INSERT INTO data(rubrik, inlagg, av, email, datum, svar, antalsvar, svartill) VALUES ('" & rubrik & "','" & inlagg & "','" & av & "','" & email & "', " & datum & ", '" & svar & "', " & antalsvar & ", " & svartill & ")"
Connection.Execute(SQL2) '///RAD 188!
Response.Redirect"forum.asp"

Vad är det för fel nu då?!

Förresten, God jul och gott nytt år allesammans! :e

/Mika3l

Permalänk: https://www.webforum.nu/p/301601

## #13 — @nders, 2001-12-25T21:07Z

Vad är fältet datum av för datatyp? Om det är typen datum skall du ha brädgårdar runt värdet:

```
SQL2 = "INSERT INTO data(rubrik, inlagg, av, email, datum, svar, antalsvar, svartill) VALUES ('" & rubrik & "','" & inlagg & "','" & av & "','" & email & "', #" & datum & "#, '" & svar & "', " & antalsvar & ", " & svartill & ")"
```

Mvh,

Permalänk: https://www.webforum.nu/p/301602

---

Tråden på webben: https://www.webforum.nu/amne/asp/13356-förbannade-insert
