---
title: "Gamla poster i databasen skrivs över av nya..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/9525-gamla-poster-i-databasen-skrivs-över-av-nya"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "soffan76"
published: "2001-05-16T07:51:00.000Z"
updated: "2001-05-16T09:00:00.000Z"
replies: 5
views: 238
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/9525-gamla-poster-i-databasen-skrivs-över-av-nya"
---

# Gamla poster i databasen skrivs över av nya...

## #1 — soffan76, 2001-05-16T07:51Z

Hej alla!

Jag har ett antal checkboxar med en tillhörande dropdown list. När man gjort ett val i en checkbox ska även ett val göras i dropdown-menyn. Men sedan när dessa värden skrivs in tillsammans med ett ID-nummer så skrivs den senast inlagda posten över. Kan nån berätta varför det blir så? Mvh Sofia

```

<% 
Set Conn = Server.CreateObject("ADODB.Connection") 
set rs = Server.createObject ("ADODB.Recordset")
Conn.Open "PA" 

SQL = "SELECT * FROM PA_Koppling_Atgard"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Conn, 1,2

for i=1 to Session("x")
if trim(request.form("check"+cstr(i)))<>"" then 

rs("PA_ID") = Session("PA_ID")
rs("Atgard_ID") = Request.form("check"+cstr(i))
rs("Val") = Request.form("koll"+cstr(i))

rs.AddNew
end if
next
%>
```

Koden på sidan innan ser ut som följer:

```
<form method="POST" action="form2_projektatgard2.asp">
<table>
<%
x=1
y=1
Do until rs.EOF %> 
<tr>
<td><input type=checkbox value="<% = rs("Atgard_ID") %>" name="check<%=x%>"><% = rs("Namn") %></td>
<%x= x--1%>

<td>
<select name="koll<%=y%>">
<option selected=""> 
<option value="Nybyggnad">Nybyggnad
<option value="Ombyggnad">Ombyggnad
</select>
<%y= y--1%>
</td>
</tr>
<%
rs.movenext 
loop
Session("x")= x 
Session("y")= y
%>
</table>

<table>
<tr><td>&nbsp;</td></tr>
<tr><td><input type=submit value="submit"></td></tr>
</table>
</form>
```

mycket kod blir det....

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

## #2 — Vide, 2001-05-16T07:55Z

Du måste sätta rs.AddNew för du lägger till saker, annars blir det som du säger att poster skrivs över... och sedan behöver du en rs.Update efter det att du lagt till... :)

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

## #3 — soffan76, 2001-05-16T08:31Z

Ok...fast det blir felmeddelande...

Microsoft OLE DB Provider for ODBC Drivers error '80040e21' 

Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done. 

form2_projektatgard2.asp, line 30 

Ska koden se ut så här? 
RS.AddNew ligger på linje 30, där felmeddelandet är.

```

SQL = "SELECT * FROM PA_Koppling_Atgard"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Conn, 1,2

for i=1 to Session("x")
if trim(request.form("check"+cstr(i)))<>"" then 

rs("PA_ID") = Session("PA_ID")
rs("Atgard_ID") = Request.form("check"+cstr(i))
rs("Val") = Request.form("koll"+cstr(i))

end if
rs.AddNew
rs.Update
next
%>
```

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

## #4 — Vide, 2001-05-16T08:37Z

Nej, före det att du börjar lägga till:

```
SQL = "SELECT * FROM PA_Koppling_Atgard"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Conn, 1,2

for i=1 to Session("x")
if trim(request.form("check"+cstr(i)))<>"" then 

rs.AddNew

rs("PA_ID") = Session("PA_ID")
rs("Atgard_ID") = Request.form("check"+cstr(i))
rs("Val") = Request.form("koll"+cstr(i))

rs.Update

end if
next
```

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

## #5 — @nders, 2001-05-16T08:39Z

du ska ha .addnew innan du du börjar sätta fältvärden:

**red:** vide var först. jävla vide. :e

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

## #6 — soffan76, 2001-05-16T09:00Z

Stort tack, funkade fin-fint!

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/9525-gamla-poster-i-databasen-skrivs-över-av-nya
