---
title: "Uppdatera flera poster"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/10093-uppdatera-flera-poster"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "RiSe"
published: "2001-06-15T18:45:00.000Z"
updated: "2001-06-16T18:11:00.000Z"
replies: 3
views: 170
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/10093-uppdatera-flera-poster"
---

# Uppdatera flera poster

## #1 — RiSe, 2001-06-15T18:45Z

Jag har ett litet problem som jag blir arg på mig själv att jag inte löst än.
Jag håller på med ett Shoppingsystem, och problemet ligger i att kunna uppdatera antalet av varje produkt i varukorgen. Det som ska hända är alltså att om man ändrar antalet av en (eller flera) artikel/ar i varukorgen, så ska
ska det nya värdet ersätta det gamla.
Nåja med nuvarande kod återgår den bara till det gamla värdet (som är 1 av default) Om någon har tips på detta är jag mycket tacksam

```
<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Set RecSet = Server.CreateObject("ADODB.Recordset")
	Connect.Open "DSN=rise" 
if request.form("tomdatabas") <> "" then
	SelString ="SELECT * FROM tabordered where SessionID=" & session("SessionIDNr")
	RecSet.Open SelString,connect,1,3
           if RecSet.recordcount > 0 then
		do until RecSet.recordcount < 1
		RecSet.movefirst
			RecSet.delete
		loop
	End if
RecSet.Close
End if
if request.form("updateme") <> "" then 
	SelString ="Select * From tabOrdered where SessionID = " & session("SessionIDNr")
	RecSet.Open SelString,connect
	if RecSet.recordcount > 0 then
		do until RecSet.eof
                                if IsNumeric(request.form(RecSet("OrderID"))) then
				if clng(request.form(RecSet("OrderID"))) = 0 then
					RecSet.delete
				else
					RecSet("antal") = clng(request.form(RecSet("OrderID")))
					RecSet.update
				End if
                           End if
			RecSet.movenext
		Loop
	End if
	RecSet.close
End if
%>
<table width="500">
<tr><td width="250" align="left">
<form method="POST" action="varukorg.asp" target="main">
<input type="image" src="tomkorgen.gif" border="0" WIDTH="17" HEIGHT="19">
<small><small>Töm varukorgen</small></small>
<input type="hidden" name="tomdatabas" value="yes">
</form></td>
<td width="250" align="right">
<form method="POST" action="varukorg.asp" target="main">
			<input type="image" src="uppdatera.gif" border="0" WIDTH="17" HEIGHT="19" name="updateknapp">
			<small><small>Uppdatera ändringar</small></small>
			<input type="hidden" name="updateme" value="yese">
</td>
</table>

<table width="500">
<tr><td bgcolor="#cccccc"><font face="verdana, helvetica, arial" size="2">Antal</td>
<td bgcolor="#cccccc"><font face="verdana, helvetica, arial" size="2">Art.Nr</td>
<td bgcolor="#cccccc"><font face="verdana, helvetica, arial" size="2">Artikelnamn</td>
<td bgcolor="#cccccc"><font face="verdana, helvetica, arial" size="2">Pris</td>
</td>
<% Set Connect=Server.CreateObject("ADODB.Connection")
Connect.Open "DSN=rise"
Set RecSet=Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM tabordered where SessionID=" & session("SessionIDNr")
RecSet.Open Addera, Connect,1,3
If Recset.Eof Then
%>
<font face="verdana, helvetica, arial" size="2"></table><br><center>Din Varukorg är tom!
<%
Else
Do Until RecSet.EOF 
%>
<tr><td><input type="text" value="<%=RecSet("Antal")%>" name="<%=RecSet("OrderID")%>" size="2"></td>
<td><font face="verdana, helvetica, arial" size="1"><% =RecSet("ID") %></td>
<td><font face="verdana, helvetica, arial" size="1"><% =RecSet("Produkt") %></td>
<td><font face="verdana, helvetica, arial" size="1"><% =RecSet("aPris") %> Kr</td>
<%
RecSet.MoveNext
Loop
End if

If RecSet.eof then
else 
RecSet.Movefirst
Do until RecSet.EOF
Pengar = Pengar + RecSet("aPris") * RecSet("Antal")
RecSet.Movenext
Loop
End if
%>
</table>
</form>
<table>
<tr>
<td width="320"></td>
<td width="100"><b><font size="1">Summa:</td>
<td width="80"><b><font size="1"><% =clng(Pengar)%> Kr</td>
</tr>
<tr>
<td width="320"></td>
<td width="100"><b><font size="1">Frakt:</td>
<td width="80"><b><font size="1">49 Kr</td>
</tr>
<tr>
<td width="320"></td>
<td width="100"><b><font size="2">Totalt:</td>
<td width="80"><b><font size="2"><%=clng(pengar + 49)%> Kr</td>
</tr>
</table>
<%
RecSet.Close
Set RecSet = Nothing
Set Connect = Nothing
%>
```

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

## #2 — crisse6, 2001-06-15T22:38Z

ngt felmess?

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

## #3 — RiSe, 2001-06-16T08:16Z

Inget felmess med koden som den är nu
men om man ändrar till "connect,1,3"
i kodavsnittet nedan får man "An array Index is out of Range"

```
if request.form("updateme") <> "" then 
SelString ="Select * From tabOrdered where SessionID = " & session("SessionIDNr")
RecSet.Open SelString,connect
```

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

## #4 — RiSe, 2001-06-16T18:11Z

Kanske blev lite oöverskådligt..
Problemet ligger i den här biten av koden..

```
if request.form("updateme") <> "" then 
SelString ="Select * From tabOrdered where SessionID = " & session("SessionIDNr")
RecSet.Open SelString,connect
if RecSet.recordcount > 0 then
do until RecSet.eof
if IsNumeric(request.form(RecSet("OrderID"))) then
if clng(request.form(RecSet("OrderID"))) = 0 then
RecSet.delete
else
RecSet("antal") = clng(request.form(RecSet("OrderID")))
RecSet.update
End if
End if
RecSet.movenext
Loop
End if
RecSet.close
End if
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/10093-uppdatera-flera-poster
