---
title: "Upload problem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/99811-upload-problem"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "clacke"
published: "2004-03-19T10:07:17.000Z"
updated: "2004-03-19T14:17:33.000Z"
replies: 13
views: 333
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/99811-upload-problem"
---

# Upload problem

## #1 — clacke, 2004-03-19T10:07Z

Jag har 2 st file fält på en sida som skickar upp bilder, och detta 
funkar som det ska. Men jag vill få in bild namnen i en databas
och försöker att hämta namnen på sida2 vilket inte lyckas.
Jag kan bara hämta in andra file fältets namn.

\<kod\>
på första sidan dom 2 file fälten:

       \<input type=FILE name="file1" \>
        \<br\>
        \<input type=FILE name="file2" \>

och på sida 2 hämtar jag in info och laddar upp den.

\<!-- #include file="upload.asp" --\>
\<%

' Create the FileUploader
Dim Uploader, File , onpage , thetext , image1, image2,headline, strConn,rs,sql,conn,dat,strFileName,saveto,file1,test,bild1
Set Uploader = New FileUploader

' This starts the upload process
Uploader.Upload()

'\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
' Use \[FileUploader object\].Form to access 
' additional form variables submitted with
' the file upload(s). (used below)
'\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

	
	' Check if any files were uploaded
	If Uploader.Files.Count = 0 Then
		Response.Write "File(s) not uploaded."
	Else

	' Loop through the uploaded files
	For Each File In Uploader.Files.Items

		' Save the file
			File.SaveToDisk Server.MapPath("images")
			
		
		image1 =  File.FileName

	Next
End If
		
	 
		

	'\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*skriver ut textrutans text
	headline =  Uploader.Form("headline") 
	'response.write headline 
	
\------------ försöker att skriva ut, men det funkar inte-------
	bild1 =  Uploader.Form("file1") 
	response.write bild1&"\<br\>"
	
	
	'\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*skriver ut andra textrutans text
	onpage = Uploader.Form("onpage") 
	'response.write onpage&"\<br\>"

	'\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*skriver ut bildnamnet
	response.write  image1 
	
	'\*\*\*\*\*\*\*\*\*\*\*\*\*öppnar ACCESS databasen när den ligger på servern\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*'
	strConn= "DBQ=" & Server.MapPath("nordnet.mdb")& ";Driver={Microsoft Access Driver (\*.mdb)};"
	set conn = server.CreateObject("ADODB.Connection")
	conn.Open strConn 
	dat = date()
			
		'\*\*\*\*\*\*\*\*\*Detta lägger in data i databasen i resp fält\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*'
		sql= "INSERT INTO upload(headline,onpage,image1,image2,datum) VALUES ('"& headline &"','"& onpage &"','"& image1 &"','"& image2 &"',''"& dat &"');"
		conn.Execute (sql)'kör sql-sats
		
		'\*\*\*\*\*\*\*\*\*\*\*stänger databasen\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*'
		conn.close
		set conn=nothing
	
	
	
	
%\>
\<html\>
\<head\>

\</head\>
\<body\>
\</body\>
\</html\>\</kod\>

"image1" skriver ut andra file formuläret
vill att båda bilderna skrivs in på en och samma rad i databasen.
Nu lägger den in texten på 2 rader?
Vad gör jag för fel?

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

## #2 — Engine^, 2004-03-19T10:45Z

Det här har knappast med SQL att göra.

Värdet på image1 är givetvis den andra filens namn, eftersom du sätter det i loopen.

Du tilldelar inte variabeln image2 något värde.

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

## #3 — clacke, 2004-03-19T10:48Z

request.form kan man inte använda med ett upload script får
felmeddelande:
\<kod\>
Cannot use Request.Form collection after calling BinaryRead.
/koder/uploaders/min_pureupload/uploadform2.asp, line 45
\</kod\>

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

## #4 — @nders, 2004-03-19T10:49Z

> **clacke skrev:**
>
> request.form kan man inte använda med ett upload script får
> felmeddelande:
> \<kod\>
> Cannot use Request.Form collection after calling BinaryRead.
> /koder/uploaders/min_pureupload/uploadform2.asp, line 45
> \</kod\>

Det är riktigt. Det är därför upload-komponenterna har egna metoder för att hämta in formulärdata.

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

## #5 — Engine^, 2004-03-19T10:49Z

Därav min redigering, jag trodde inte att du skulle hinna se det ;)

Kodtaggen skrivs &#91kod\] inte \<kod\>

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

## #6 — LarsG, 2004-03-19T10:50Z

I din kod så kommer image1 att innehålla det sista filnamnet eftersom det ändras för varje iteration i din for-loop. Image2 får aldrig något värde. 

Du måste spara varje filnamn för sig och då är det enklast att använda en array.

```
dim images(20)
dim files
files = 0
 For Each File In Uploader.Files.Items

' Save the file
File.SaveToDisk Server.MapPath("images")
if files > ubound(images) then redim images(files+20)
images(files) = file.filename
'response.write images(files) & "<br>"
files = files + 1
Next
End If

'******************skriver ut textrutans text
headline = Uploader.Form("headline")
'response.write headline

------------ försöker att skriva ut, men det funkar inte-------
bild1 = Uploader.Form("file1")
response.write bild1&"<br>"

'******************skriver ut andra textrutans text
onpage = Uploader.Form("onpage")
'response.write onpage&"<br>"

'*************öppnar ACCESS databasen när den ligger på servern*****************'
strConn= "DBQ=" & Server.MapPath("nordnet.mdb")& ";Driver={Microsoft Access Driver (*.mdb)};"
set conn = server.CreateObject("ADODB.Connection")
conn.Open strConn
dat = date()

'*********Detta lägger in data i databasen i resp fält*******************'
sql= "INSERT INTO upload(headline,onpage,image1,image2,datum) VALUES ('"& headline &"','"& onpage &"','"& images(0) &"','"& images(1) &"',''"& dat &"');"
conn.Execute (sql)'kör sql-sats
```

Flyttas från SQL

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

## #7 — clacke, 2004-03-19T10:52Z

Jag kan ju hämta andra formulär och det funkar med

```
headline = Uploader.Form("headline")
```

men varför kan jag inte hämta file fälten på samma sätt med

image1 = Uploader.Form("image1")
image2 = Uploader.Form("image2")

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

## #8 — clacke, 2004-03-19T10:57Z

Lars- jag får ett felmeddelande:

```
Error Type:
Microsoft VBScript compilation (0x800A0400)
Expected statement
/koder/uploaders/min_pureupload/uploadform2.asp, line 60
End If
```

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

## #9 — LarsG, 2004-03-19T10:59Z

End if kom med av misstag.

Ta bort den raden.

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

## #10 — clacke, 2004-03-19T11:01Z

Måste man inte avsluta en if sats?, prövade men fíck fel:

```
Error Type:
Microsoft VBScript runtime (0x800A01A8)
Object required: ''
```

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

## #11 — clacke, 2004-03-19T11:09Z

Funkar bra  nu, den laddar upp bilderna och lägger in namnen idatabasen.

Men den lägger in 2st likadana rader?

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

## #12 — clacke, 2004-03-19T12:12Z

Lars- Varför lägger den i 2 likadana rader i databasen, loopen
går ju utanför sql satsen?

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

## #13 — LarsG, 2004-03-19T12:34Z

> Lars- Varför lägger den i 2 likadana rader i databasen, loopen

Svårt att säga. Är det all kod på sidan?  Laddas samma sida 2 gånger?

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

## #14 — clacke, 2004-03-19T14:17Z

Här är all kod på sidan

```
<%@ Language=VBScript %>
<%Option Explicit%>
<!-- #include file="upload.asp" -->
<%

'NOTE - YOU MUST HAVE VBSCRIPT v5.0 INSTALLED ON YOUR WEB SERVER
'	   FOR THIS LIBRARY TO FUNCTION CORRECTLY. YOU CAN OBTAIN IT
'	   FREE FROM MICROSOFT WHEN YOU INSTALL INTERNET EXPLORER 5.0
'	   OR LATER.

' Create the FileUploader
Dim Uploader, File , onpage , thetext , image, headline, strConn,rs,sql,conn,dat,strFileName,saveto,file1,test,bild1
Dim image1,image2
Set Uploader = New FileUploader

' This starts the upload process
Uploader.Upload()

'******************************************
' Use [FileUploader object].Form to access 
' additional form variables submitted with
' the file upload(s). (used below)
'******************************************

	
	
		
			dim images(20)
			dim files
			files = 0
			 For Each File In Uploader.Files.Items
			
			' Save the file
			File.SaveToDisk Server.MapPath("images")
			if files > ubound(images) then redim images(files+20)
			images(files) = file.filename
			response.write images(files) & "<br>"
			files = files + 1
			Next
			'End If

			'******************skriver ut textrutans text
		headline = Uploader.Form("headline")
		'response.write headline
		
		'******************skriver ut andra textrutans text
		onpage = Uploader.Form("onpage")
		'response.write onpage&"<br>"
		
		'*************öppnar ACCESS databasen när den ligger på servern*****************'
		strConn= "DBQ=" & Server.MapPath("nordnet.mdb")& ";Driver={Microsoft Access Driver (*.mdb)};"
		set conn = server.CreateObject("ADODB.Connection")
		conn.Open strConn
		dat = date()
		
		'*********Detta lägger in data i databasen i resp fält*******************'
		sql= "INSERT INTO bilar(headline,onpage,image1,image2,datum) VALUES ('"& headline &"','"& onpage &"','"& images(0) &"','"& images(1) &"','"& dat &"');"
		conn.Execute (sql)'kör sql-sats
		
		'***********stänger databasen***************'
		conn.close
		set conn=nothing
	
	
	
	
%>
<html>

<head>

</head>
<body>
</body>
</html>
```

Mycket tacksam för hjälp

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/99811-upload-problem
