---
title: "Hur skickar man mågna formulär"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/9277-hur-skickar-man-mågna-formulär"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "eriks"
published: "2001-05-02T12:09:00.000Z"
updated: "2001-05-04T15:08:00.000Z"
replies: 9
views: 240
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/9277-hur-skickar-man-mågna-formulär"
---

# Hur skickar man mågna formulär

## #1 — eriks, 2001-05-02T12:09Z

Hej!

Jag lägger upp data till en databas med hjälp av ett forumlär. Ofta vill jag emellertid lägga upp 1 - 5 poster åt gången, och då måste jag klicka fram och tillbaka varje gång. Kan man inte med hjälp av en Loop göra så att formuläret visades 5 gånger, och att sedan lades de formulär som var ifyllda in i databasen (det är ju inte säkert att jag lägger upp exakt 5 poster varje gång). Man måste väl använda en Loop både på den sidan där man lägger upp formuläret och på den sidan som man lägger in posterna i databasen?

Jag är inte riktigt klar över hur koden ska se ut. Någon som har förstått och vet hur man ska göra?

Tack! /Erik

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

## #2 — berinder, 2001-05-02T12:46Z

Loopa som sagt igenom formuläret, fast innanför \<form\>-taggarna, du kan bara skicka ett form åt taget, och lägg till ett index efter varje form-namn typ...

```
For i = 1 to 5
%>
<input type="text" name="e-mail<%= i%>">
<%
Next
```

Sen i den som tar emot så kollar du nått fält

```
i = 0
Do
i = i + 1
email = request("email" & i)

if len(email) < 1 then
   noMore = True
else
   lägg in i databas
end if
Until noMore
```

Så snurrar det nog på ganska bra! ;)

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

## #3 — eriks, 2001-05-03T11:42Z

Tack för hjälpen, det blir emellertid lite problem. Jag får svaret "programsats förväntas" om jag bara skriver

Until noMore

Hur ska jag skriva?

/Erik

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

## #4 — eriks, 2001-05-03T18:55Z

Jag förstår inte koden riktigt.
Vad betyder Until noMore ?

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

## #5 — LarsG, 2001-05-03T19:08Z

until avslutar ett block som man börjar med do. T.ex.

```
do

until nomore
```

koden mellan do och until kommer att utföras tills dess att variabeln nomore får värdet true

Du kan ju visa den kod du har nu så kan vi nog se varför du får felet programsats förväntas.

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

## #6 — @nders, 2001-05-03T19:12Z

larsg,

förklara för mig.

```
do until nomore
...
loop
```

kontra

```
do
...
until nomore
```

jag har aldrig sett ditt sätt, så jag känner mig nödgad att kasta in en fråga. (veto :q ;) )

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

## #7 — Vide, 2001-05-03T21:12Z

Det är väl bara ett annat sätt att skriva det på... ibland har det vissa fördelar med att ha programsatsen sist i loopen... :)

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

## #8 — LarsG, 2001-05-03T21:28Z

Jo visst, för do så skall det ju alltid vara med en loop, vilket jag glömde.
(Använder nästan enbart while ... wend själv.)

Så ett av eriks problem är att det saknas ett loop i koden

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

## #9 — eriks, 2001-05-04T14:32Z

Så här ser koden ut:

\<%

Set Connection = Server.CreateObject("ADODB.Connection")
	Connection.Open "driver={Microsoft Access Driver (\*.mdb)};dbq=c:\\inetpub\\wwwroot\\asp\\test.mdb"

i = 0
Do 
i = i + 1

email = request("email" & i)
if len(email) \< 1 then
noMore = True
else

	SQLStmt = "Insert Into Namn "
	SQLStmt = 	SQLStmt & 	"(Namn) "
 	SQLStmt = 	SQLStmt & 	"VALUES('" &(Request.Form("email")) & "')"
	Connection.Execute(SQLStmt)

end if
Until noMore
%\>

Svaret blir: Programsats förväntas. Om jag instället ändrar till
Do Until noMore
............
Loop

då händer ingenting. Inget felmeddenlande, ingenting. Hur ska jag gå åt det hela?

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

## #10 — eriks, 2001-05-04T15:08Z

Jag löste det, puh! Jag ändrade Till Do/Loop, och så rättade jag till lite andra småfel. Tack för all hjälp!

En annan sak. Om Man har fem fält (som i detta exemplet), och om man fyller i fält 1 och 4 (alltså inte i rätt ordning, man lämnar tre fält tomma), så skrivs inget in i databasen. Kan man göra så att det inte spelar någon roll vilket fält man fyller i, typ genom en enkel if -sats?

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/9277-hur-skickar-man-mågna-formulär
