---
title: "Funkar inte att spara."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/13294-funkar-inte-att-spara"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ampy"
published: "2001-12-19T16:51:00.000Z"
updated: "2001-12-20T13:41:00.000Z"
replies: 14
views: 285
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/13294-funkar-inte-att-spara"
---

# Funkar inte att spara.

## #1 — ampy, 2001-12-19T16:51Z

Hej!
Jag kan inte spara ändringen som jag har gjort i formuläret. Så här ser hela koden radera.asp ut:

```
<!-- #include file = "adovbs.inc" -->

<html>
<head>

<style type="text/css">
body { 
scrollbar-base-color: #FFE784; 
scrollbar-arrow-color: #000000; 
scrollbar-highlight-color: #; 
scrollbar-3dlight-color: #000000; 
scrollbar-darkshadow-color: #000000; 
scrollbar-track-color: #FFF7EF }
</style>

<STYLE type=text/css>A:link {
	COLOR: #000080; TEXT-DECORATION: none
}
A:visited {
	COLOR: #000080; TEXT-DECORATION: none
}
A:active {
	COLOR: #000000; TEXT-DECORATION: none
}
A:hover {
	COLOR: #5A5AFC; TEXT-DECORATION: none
}
</STYLE>

<style type="text/css">
input,textarea {font-family: Verdana; font-size:10px; font-weight: normal; border: 1px solid (color: #000000); background-color:#FFFFFF ; color: #000000}
</style>

</head>

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

		sql = "SELECT * FROM installningar"
		recset.open sql, connect, adopenstatic, adlockoptimistic

		bgtable = RecSet("bgtable")
		bgcolor = RecSet("bgcolor")
		bgform = RecSet("bgform")
		link = RecSet("link")
		linkover = RecSet("linkover")
		namn = RecSet("namn")
		bild = RecSet("bild")
		bildurl = RecSet("bildurl")
		username = RecSet("username")
		password = RecSet("password")
		kortfattningar = RecSet("kortfattningar")

		recset.close

		%>

<body bgcolor="<%=bgtable%>">

<font size="1" face="verdana">

<% 
SQL = "SELECT * FROM nyheter WHERE id = "&request.querystring("id")
recset.open SQL, connect, adopenstatic, adlockoptimistic
Do Until RecSet.EOF %>
 
      <form name="form1" method="post" action="radera.asp?vad=uppdatera">

  <INPUT TYPE=text name="datum" SIZE=86 value="<% = RecSet("datum") %>"><br>
    
  <textarea name="nyheter" cols="85" rows="7"><% = RecSet("nyheter") %></textarea><br>

 <INPUT TYPE=text name="datum" SIZE=86 value="<% = RecSet("kortfattat") %>"><br><br>

	<INPUT type="submit" name="Submit" value="Spara">

	
</form>

      

     
  
  <%
	RecSet.MoveNext
	Loop
	RecSet.Close

		If Request.Querystring("vad") = "uppdatera" Then

		Addera = "Select * From nyheter" 
		RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

		RecSet.AddNew

		RecSet("datum") = Request.Form("datum")
		RecSet("nyheter") = Request.Form("nyheter")
		RecSet("kortfattat") = Request.Form("kortfattat")

		RecSet.Update
		recset.close
		

		Response.Redirect "radera.asp"

		End If%>

</body>

</html>
```

Felmeddelande:

```
Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel (operator saknas) i frågeuttrycket 'id ='.
/nyheter/radera.asp, line 82
```

Rad 82:

```
[b]Rad 81:[/b]SQL = "SELECT * FROM nyheter WHERE id = "&request.querystring("id")
[b]Rad 82:[/b]recset.open SQL, connect, adopenstatic, adlockoptimistic
```

Kan det bero på att jag hämtar ID från inloggad.asp som det blir fel?

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

## #2 — lolukokasos, 2001-12-19T17:14Z

Det verkar som du inte har nåt värde med dig, request.querystring("id"), testa och skriv ut den variabeln. Om du inte får ut nåt värde så är det där du ska leta vidare.

Hoppas det kan hjälpa dig något på vägen...

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

## #3 — ampy, 2001-12-19T17:30Z

Värdet har jag fått med för att jag får ju nyheten i textarean.

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

## #4 — PatrikB, 2001-12-19T17:40Z

Men när du postar ett formulär så måste du hämta med request.form

cya,
PatrikB

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

## #5 — lolukokasos, 2001-12-19T17:45Z

Vad händer om du avslutar SQL-strängen på ett korrekt sätt:

```
"SELECT * FROM nyheter WHERE id = "&request.querystring("id")&""
```

Jag såg bara på felmeddelandet och där stod det att "id=" (ingenting) vilket säkert kan ge ett sådant fel.

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

## #6 — @nders, 2001-12-19T17:50Z

> Vad händer om du avslutar SQL-strängen på ett korrekt sätt

Det 'korrekta' sättet är enligt ampys fråga ovan, om jag blir tillfrågad. Varför lägga till en tom sträng, dvs ingenting, till en sträng?

Onödiga knapptryckningar är dåliga knapptryckningar. ;)

Mvh,

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

## #7 — LarsG, 2001-12-19T17:56Z

Om du kommer in i avsnittet

```
If Request.Querystring("vad") = "uppdatera" Then
```

så gör du response.redirect till radera.asp utan att du anger querystring.

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

## #8 — ampy, 2001-12-19T18:20Z

\>\> LarsG

Kan du inte förklara lite mer detaljerat hur jag ska göra.

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

## #9 — PatrikB, 2001-12-19T18:31Z

Nu var det ju en uppdatering som skulle ske .... redirecten har ju inte med felet att göra utan felet ligger i att han har ett fel i querystringen eftersom inget id skickas med för att direkt under, med ADODB.Recordset, uppdatera en post och SEDAN ska redirecten utföras

Du måste se till att du får med dig id'et antingen genom querystring eller genom tex ett hidden field i formet

cya,
PatrikB

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

## #10 — ampy, 2001-12-19T18:55Z

Är det ingen som kan förklara mer detaljerat **HUR** jag ska skriva. Hur koderna ska se ut.

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

## #11 — PatrikB, 2001-12-19T19:44Z

Ändra:

```
<% 
SQL = "SELECT * FROM nyheter WHERE id = "&request.querystring("id")
recset.open SQL, connect, adopenstatic, adlockoptimistic
Do Until RecSet.EOF %>

<form name="form1" method="post" action="radera.asp?vad=uppdatera">
```

till:

```
<% 
SQL = "SELECT * FROM nyheter"
recset.open SQL, connect, adopenstatic, adlockoptimistic
Do Until RecSet.EOF %>

<form name="form1" method="post" action="radera.asp?vad=uppdatera&id=<% =RecSet("Id")%>">
```

och sedan ändrar du:

```
If Request.Querystring("vad") = "uppdatera" Then

Addera = "Select * From nyheter WHERE id = " & request.QueryString("id") 
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

RecSet.AddNew

RecSet("datum") = Request.Form("datum")
```

cya,
PatrikB

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

## #12 — lolukokasos, 2001-12-19T20:11Z

Ursäkta för mitt inlägg ovan om korrekt skrivsätt angående variabel i sql-satsen, hoppas inte det ställde till för mycket för dig. lolukokasos = :( :r

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

## #13 — @nders, 2001-12-19T20:23Z

Tillägg: lolukokasos, din SQL-sats är inte fel, bara så du vet. :)

Mvh,

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

## #14 — ampy, 2001-12-20T11:20Z

Nu ser min kod ut så här på sidan radera.asp:

```
<!-- #include file = "adovbs.inc" -->

<html>
<head>

<style type="text/css">
body { 
scrollbar-base-color: #FFE784; 
scrollbar-arrow-color: #000000; 
scrollbar-highlight-color: #; 
scrollbar-3dlight-color: #000000; 
scrollbar-darkshadow-color: #000000; 
scrollbar-track-color: #FFF7EF }
</style>

<STYLE type=text/css>A:link {
	COLOR: #000080; TEXT-DECORATION: none
}
A:visited {
	COLOR: #000080; TEXT-DECORATION: none
}
A:active {
	COLOR: #000000; TEXT-DECORATION: none
}
A:hover {
	COLOR: #5A5AFC; TEXT-DECORATION: none
}
</STYLE>

<style type="text/css">
input,textarea {font-family: Verdana; font-size:10px; font-weight: normal; border: 1px solid (color: #000000); background-color:#FFFFFF ; color: #000000}
</style>

</head>

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

		sql = "SELECT * FROM installningar"
		recset.open sql, connect, adopenstatic, adlockoptimistic

		bgtable = RecSet("bgtable")
		bgcolor = RecSet("bgcolor")
		bgform = RecSet("bgform")
		link = RecSet("link")
		linkover = RecSet("linkover")
		namn = RecSet("namn")
		bild = RecSet("bild")
		bildurl = RecSet("bildurl")
		username = RecSet("username")
		password = RecSet("password")
		kortfattningar = RecSet("kortfattningar")

		recset.close

		%>

<body bgcolor="<%=bgtable%>">

<font size="1" face="verdana">

<% 
SQL = "SELECT * FROM nyheter WHERE id = " & request.QuerySTring("id")
recset.open SQL, connect, adopenstatic, adlockoptimistic%> 
<form name="form1" method="post" action="radera.asp?vad=uppdatera&id=<% =RecSet("Id")%>">

  <INPUT TYPE=text name="datum" SIZE=86 value="<% = RecSet("datum") %>"><br>
    
  <textarea name="nyheter" cols="85" rows="7"><% = RecSet("nyheter") %></textarea><br>

 <INPUT TYPE=text name="datum" SIZE=86 value="<% = RecSet("kortfattat") %>"><br><br>

	<INPUT type="submit" name="Submit" value="Spara">

	
</form>

      

     
  
  <%
	
	RecSet.Close

		If Request.Querystring("vad") = "uppdatera" Then
	
		

		Addera = "Select * From nyheter WHERE id = " & request.QueryString("id") 
		RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

		
	

		RecSet.AddNew

		RecSet("datum") = Request.Form("datum")
		RecSet("nyheter") = Request.Form("nyheter")
		RecSet("kortfattat") = Request.Form("kortfattat")

		RecSet.Update
		recset.close
		connect.close	
		

		Response.Redirect "radera.asp?vad=uppdatera2"

		End If

		If Request.Querystring("vad") = "uppdatera2" Then

		Response.Write "Du har nu ändrat ditt meddelande och detta fönster kommer att stängas inom 5 sekunder."

		End If%>
</body>

</html>
```

Nu funkar det i alla fall att spara men sedan när man har sparat så ska man skickas till sidan radera.asp?vad=uppdatera2. Men det gör man inte för att det kommer detta felmeddelande: 

```
 Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel (operator saknas) i frågeuttrycket 'id ='.
/nyheter/radera.asp, line 83
```

Rad 83:

```
[b]Rad 82: [/b]SQL = "SELECT * FROM nyheter WHERE id = " & request.QuerySTring("id")
[b]Rad 83: [/b]recset.open SQL, connect, adopenstatic, adlockoptimistic%>
```

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

## #15 — PatrikB, 2001-12-20T13:41Z

```
Response.Redirect "radera.asp?vad=uppdatera2[b]&id=" & Request.QueryString("id")
```

Du skulle kunna spara Request.QueryString("id") i en egen variabel överst på sidan för att spara på antalet anrop till request objektet.

cya,
PatrikB

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/13294-funkar-inte-att-spara
