---
title: "FSO - Array"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/145154-fso-array"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "webbSAJTEN"
published: "2006-04-06T09:39:43.000Z"
updated: "2006-04-07T17:17:32.000Z"
replies: 16
views: 779
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/145154-fso-array"
---

# FSO - Array

## #1 — webbSAJTEN, 2006-04-06T09:39Z

Hejsan!
jag har sökt på WF och hittat ett par trådar om detta men inte hittat någon kod som sett ut att passa mig riktigt..

Jag hämtar en massa bilder från en mapp och vill lägga alla bilder i olika arrayer för att kunna visa dem en och en och kunna bläddra fram och tillbaka bland dem.

Hoppas ni förstör vad jag menar..
Vill alltså ha
Array(0) = Första bilden
Array(1) = Andra bilden
o.s.v.

Hur kan en sådan kodsnutt se ut?

```
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set folder = fso.getFolder(Server.MapPath("bilder/"))
```

Sådär hämtar jag bilderna i alla fall :)

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

## #2 — webbSAJTEN, 2006-04-06T21:01Z

```
<%
	Set fso = Server.CreateObject("Scripting.FileSystemObject")
	
If NOT fso.FolderExists(server.mappath("bilder/")) Then
Response.Write "Det finns ingen mapp!"
Else

Set folder = fso.getFolder(Server.MapPath("bilder/"))

set files = folder.files
	
nummer = -1
Dim myArray
for each Item in files
	nummer = nummer+1
	myArray(nummer) = Item.name
Next
end if
```

Hur rätt ute är jag?
Jag får felmess:

**Type mismatch**

på rad:

**myArray(nummer) = Item.name**

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

## #3 — @nders, 2006-04-07T03:53Z

MyArray är ingen array, utan en vanlig variabel. Släng på en *Redim Preserve MyArray(nummer)* innan du försöker lägga något i den. Du kan också vara tvungen att lägga på (0) vid dim också.

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

## #4 — webbSAJTEN, 2006-04-07T06:16Z

```
	Redim Preserve MyArray(nummer) = Item.name
```

Felmess

```
Redim MyArray(nummer)=Item.name
---------------------^
```

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

## #5 — @nders, 2006-04-07T06:18Z

Hmm, varför skrev du så?

```
	nummer = nummer+1
	Redim preserve myArray(nummer)
	myArray(nummer) = Item.name
```

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

## #6 — webbSAJTEN, 2006-04-07T06:21Z

Förlåt, visste inte hur de skulle vara..

             Type mismatch

de felet får ja nu, på raden

	Redim preserve myArray(nummer)

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

## #7 — @nders, 2006-04-07T06:34Z

Har du lagt på (0) vid dim så variabeln är en array redan från början? 

```
dim myArray(0)
```

Hur ser hela koden ut?

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

## #8 — webbSAJTEN, 2006-04-07T06:36Z

Hade det förut och fick felmess:

This array is fixed or temporarily locked

:)

```
<%
	Set fso = Server.CreateObject("Scripting.FileSystemObject")
	
If NOT fso.FolderExists(server.mappath("bilder/")) Then
Response.Write "Det finns ingen mapp!"
Else

Set folder = fso.getFolder(Server.MapPath("bilder/"))

set files = folder.files
	
Dim myArray(0), nummer
nummer = -1
for each Item in files
	nummer = nummer+1
	Redim preserve myArray(nummer)
	myArray(nummer) = Item.name
Next
end if

%>
```

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

## #9 — colione, 2006-04-07T06:53Z

```
Set fso = Server.CreateObject("Scripting.FileSystemObject")
	
If NOT fso.FolderExists(server.mappath("bilder/")) Then
Response.Write "Det finns ingen mapp!"
Else

Set folder = fso.getFolder(server.mappath("bilder/"))

set files = folder.files
	
myArray=Array()
nummer = -1
for each Item in files
	nummer = nummer+1
	Redim preserve myArray(nummer)
	myArray(nummer) = Item.name
Next
end if
```

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

## #10 — @nders, 2006-04-07T06:53Z

Prova detta då:

```
Dim myArray(0), nummer
Redim preserve myArray(files.count-1)
nummer = -1
for each Item in files
	nummer = nummer+1
	myArray(nummer) = Item.name
Next
```

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

## #11 — webbSAJTEN, 2006-04-07T06:57Z

men tänka sig, de fungerade =)

Nu är nästa steg att kunna bläddra mellan bilderna =)
De ska jag nog kunna fixa själv..

TACK ALLA!!!

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

## #12 — webbSAJTEN, 2006-04-07T07:05Z

Nu är de här nästan klart =)

Det jag vill ha reda på hur man ser hur många arrayer det finns.
Har läst om det men kommer inte ihåg hur det var..

:D

<http://www.r60design.com/photo/bilder.asp>

sådär är resultatet..

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

## #13 — @nders, 2006-04-07T07:11Z

Du har väl bara en array?
Hur stor den är kan du få reda på med ubound(arraynamn). Du får då dess största index, så ska du visa antal så får du lägga på 1 (eftersom arrayer är nollbaserade.)

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

## #14 — webbSAJTEN, 2006-04-07T07:17Z

Det har du rätt i =)

max = ubound(myArray)

Lägger den i en variabel...

Sen kollar jag 
\<% if bild = max then %\>

Men det blir ändå fel..
Kolla på sidan och gå fram så långt som möjligt..

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

## #15 — webbSAJTEN, 2006-04-07T07:28Z

Men självklart måste man sätta cint()
Gjorde de =)

Puss!

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

## #16 — webbSAJTEN, 2006-04-07T10:00Z

Nu känner jag mig väldigt jobbig men jag behöver hjälp med en sak.

På sidan ser ni hur det ser ut.
Det jag undra är hur jag ska göra för att skriva ut all bilder i mappen och länka dem med samma bildnummer, alltså samma querystring genereras i arrayen.

Finns det någon metod för att få fram vilket nummer en bild har?

Hoppas ni förstår...

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

## #17 — webbSAJTEN, 2006-04-07T17:17Z

De löste sig de där också :D
Här kommer hela min kod!

```
<%
Set fso = Server.CreateObject("Scripting.FileSystemObject")
	
If NOT fso.FolderExists(server.mappath("bilder/")) Then
Response.Write "Det finns ingen mapp!"
Else

Set folder = fso.getFolder(server.mappath("bilder/"))

set files = folder.files
set files2 = folder.files

nummer = -1
myArray=Array()
for each Item in files
	nummer = nummer+1
	Redim preserve myArray(nummer)
	myArray(nummer) = Item.name
Next

end if 

max = ubound(myArray)

if request.QueryString("bild") = "" then
bild = "0"
else
bild = request.QueryString("bild")
end if
%> 
<div align="center"> 
  <table width="100%" border="0" cellspacing="0" cellpadding="10">
    <tr>
      <td width="46%"><img src="bilder/<%=myArray(bild)%>" width="384" height="316" border="0"></td>
      <td width="54%">
        <table width="100%" border="0" cellspacing="0" cellpadding="10">
          <tr>
            <td bgcolor="#CCCCCC">F&ouml;reg&aring;ende bild</td>
          </tr>
          <tr>
            <td>  <% if bild = "0" then%>
  Ingen 
  <% else %>
  <a href="bilder.asp?bild=<%=bild-1%>"><img src="bilder/<%=myArray(bild-1)%>" width="193" height="113" border="0"></a> 
  <% end if %></td>
          </tr>
          <tr>
            <td bgcolor="#CCCCCC">N&auml;sta bild</td>
          </tr>
          <tr>
            <td><% if cInt(bild) = cInt(max) then %>
  Ingen
<% else %>
  <a href="bilder.asp?bild=<%=bild+1%>"><img src="bilder/<%=myArray(bild+1)%>" width="193" height="113" border="0"></a> 
<% end if %></td>
          </tr>
        </table>
      </td>
    </tr>
  </table>
<% 
	nummer2 = -1
for each Item in files
	nummer2 = nummer2+1
%>
<a href="bilder.asp?bild=<%=nummer2%>"><img src="bilder/<%=Item.name%>" width="384" height="316" border="0"></a><br>
<% next %>
</div>
```

Tack för all er hjälp :D

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/145154-fso-array
