Jag har försökt använda detta till en slide med thumbs som jag använder till att visa bilder med på min sida. Som det är nu listar jag filerna med hjälp av FSO - detta gör att de hamnar i "felvänd" ordning - senaste bilden överst osv... Blir det bättre om du gör såhär istället tro? (skippar suben) ...jag testade & tog även bort ID:t, men det verkade inte fungera iaf - det blir samma felmeddelande - så här skrev jag nu: Denna hära funkar klockrent ô¿ôLoopa in filnamn i ett "recordset utan db" mha FSO
...jag hade hoppats att kunna loopa in dem i ett recordset för att sedan loopa ut dem i vilken ordning jag vill, men det verkar inte fungera. Jag gör naturligtvis ngt fel, men kan inte komma på vad - jag undrar om någon med hjälp av nedanstående kod kan ha tid att hjälpa mig komma på vad jag gör för fel.
<code>
<!--#include file="../adovbs.inc"-->
<html>
<head>
<title>photo.slide</title>
<link rel=stylesheet href="../styles/screen.css" type="text/css">
<script language="javascript" type="text/javascript" src="../scripts/blur.js"></script>
</head>
<body dir="rtl">
<table border="0" cellpadding="0" cellspacing="3" height="100%" width="100%">
<%
Set rs = Server.CreateObject("Adodb.Recordset")
With rs
.CursorLocation = adUseClient
.Fields.Append "Id", adInteger
.Fields.Append "FileName", adVarChar, 50
.open
End With
Sub addFile( Id, FileName )
rs.AddNew
rs( "Id" ) = Id
rs( "FileName" ) = FileName
rs.Update
End Sub
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../images/p-album"))
For Each file In MyFiles.files
addFile 1, file.Name
Next
rs.Sort = "FileName Asc"
Do until rs.eof
Response.Write ("<tr><td align='center'></td></tr>")
rs.MoveNext
Loop
rs.close
%>
</table>
</body>
</html>
</code>
Felmeddelandet jag får ser ut ungefär så här:
Microsoft Cursor Engine error '80040e21'
En flerstegsåtgärd skapade fel. Kontrollera alla statusvärden.
/p-album/slide.asp, line 22
Tack på förhandSv: Loopa in filnamn i ett "recordset utan db" mha FSO
<code>
<!--#include file="../adovbs.inc"-->
<html>
<head>
<title>photo.slide</title>
<link rel=stylesheet href="../styles/screen.css" type="text/css">
<script language="javascript" type="text/javascript" src="../scripts/blur.js"></script>
</head>
<body dir="rtl">
<table border="0" cellpadding="0" cellspacing="3" height="100%" width="100%">
<%
Set rs = Server.CreateObject("Adodb.Recordset")
With rs
.CursorLocation = adUseClient
.Fields.Append "Id", adInteger
.Fields.Append "FileName", adVarChar, 50
.open
End With
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../images/p-album"))
For Each file In MyFiles.files
rs.AddNew
rs( "Id" ) = 1 'vad nu ettan ska vara bra för...
rs( "FileName" ) = file.Name
rs.Update
Next
rs.Sort = "FileName Asc"
Do until rs.eof
Response.Write ("<tr><td align='center'></td></tr>")
rs.MoveNext
Loop
rs.close
%>
</table>
</body>
</html>
</code>
/JohanSv: Loopa in filnamn i ett "recordset utan db" mha FSO
<code>
<!--#include file="../adovbs.inc"-->
<html>
<head>
<title>photo.slide</title>
<link rel=stylesheet href="../styles/screen.css" type="text/css">
<script language="javascript" type="text/javascript" src="../scripts/blur.js"></script>
</head>
<body dir="rtl">
<table border="0" cellpadding="0" cellspacing="3" height="100%" width="100%">
<%
Set rs = Server.CreateObject("Adodb.Recordset")
With rs
.CursorLocation = adUseClient
.Fields.Append "FileName", adVarChar, 50
.open
End With
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../images/p-album"))
For Each file In MyFiles.files
rs.AddNew
rs( "FileName" ) = file.Name
rs.Update
Next
rs.Sort = "FileName Asc"
Do until rs.eof
Response.Write ("<tr><td align='center'></td></tr>")
rs.MoveNext
Loop
rs.close
%>
</table>
</body>
</html>
</code>
...har någon en lösning är det bra...hmmm...Sv: Loopa in filnamn i ett "recordset utan db" mha FSO
<code>
<%
Const adDBTimeStamp = 135
Const adVarChar = 200
Set rstFiles = Server.CreateObject("ADODB.Recordset")
rstFiles.Fields.Append "Filename", adVarChar, 255
rstFiles.Fields.Append "Modified", adDBTimeStamp
rstFiles.Open , , 3, 3
'## -- create a object to grab files --
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
'## -- grab all files in this folder --
Set objFolder = objFSO.GetFolder(Server.MapPath("/my-folder-from-wwwroot/"))
'## -- loop throught all files and add them to the recordset --
For Each File IN objFolder.Files
'## -- add file to recordset --
Call Add(File.Name, File.DateLastModified, rstFiles)
Next
Set objFSO = Nothing
'## -- sort the recordset descending by modified date --
rstFiles.Sort = "Modified DESC"
If rstFiles.RecordCount > 0 Then
rstFiles.MoveFirst
While Not rstFiles.EOF
Response.Write rstFiles("Filename") & "<BR>"
rstFiles.MoveNext
Wend
End If
%>
<%
Sub Add(ByVal fileName, ByVal lastModDate, ByRef rst)
rst.AddNew
rst("Filename") = fileName
rst("Modified") = lastModDate
rst.Update
End Sub
%>
</code>
/PatrikB