De finns ju via fso fileexists eller vad de heter, men hur pass servervänligt är de om man ska loopa genom en databas och för varje bild-post kolla om bilden finns? I vilket sammanhang tänkte du använda denna funktion? Jag har en databas med ett id nummret. detta id-nummret används sen till filnamn i bildlänkningen. Vill du kontroller vilka som saknas eller listar du alla bilder? Om du skall kontrollera vilka som saknas kan du göra nåt sånt här: <img src=bilder/<%=rs("id")%>.jpg onerror="this.onerror=null;this.src='bilder//ingenbild.jpg';"> Jag vill lista alla poster i databasen, och då bilden inte finns i en speciell folder så ska de visas en standard bild, alternativt ingen bild. Då kan du göra så som jag föreslagit fast i stället skriva: använd denna koden då: Varför gör kontroll på klienten. Belastar webserver och klient i onödan. Samt tar längre tid för klienten att få up bilden. De känns som att de är Danjels förslag jag söker... tackar! Men om de är som Andreas säger; server/klient-krävande, så är de kanske inte de bästa. Den ger en kolumn i resultatet som anger ombilden existerar i katalogen. Genom att bara loopa igenom filerna en gång. Behöver man inte anropa FileExist för varje post. JAg tror man kan spara tid på detta. Om bild inte finns -> visa en annan
Finns de något bättre alternativ än fso? Kanske nått på klientsidan?Sv: Om bild inte finns -> visa en annan
Det bästa vore väl att när användaren laddar upp en bild som kontrolleras på serversidan att det är rätt filtyp så sparas en post i databasen med filnamn.
mvh
MattiasSv: Om bild inte finns -> visa en annan
T.ex.:
<code>
<img src=bilder/<%=rs("id")%>.jpg>
</code>
Nån uppladdning av bilder från besökare eller användare förekommer inte.Sv: Om bild inte finns -> visa en annan
<code>
Dim FSO
Dim File
Dim Folder
Dim strIN
Dim strSQL
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Folder = FSO.GetFolder(Server.MapPath("/Bilder"))
For Each File In Folder.Files
If StrComp(Right(File.Name, 4), ".jpg", vbTextCompare) = 0 Then
strIN = strIN & ", " & Left(File.Name, Len(File.Name) - 4)
End If
Next
If Len(strSQL) Then
strSQL = "SELECT * FROM TabellNamn WHERE TabellNamn.Id NOT IN (" & Mid(strIN, 3) & ")"
Else
strSQL = "SELECT * FROM TabellNamn"
End If
</code>Sv: Om bild inte finns -> visa en annan
den kan du ju ha?Sv: Om bild inte finns -> visa en annan
Som de är nu då de är ingen koll alls så blir de istället en sån där genomskinlig bild med rött kryss.Sv: Om bild inte finns -> visa en annan
<code>
If Len(strSQL) Then
strSQL = "SELECT *, TabellNamn.Id IN (" & Mid(strIN, 3) & ") As Existerar FROM TabellNamn"
Else
strSQL = "SELECT *, False As Existerar FROM TabellNamn"
End If
</code>Sv: Om bild inte finns -> visa en annan
<code>
<img src=bilder/<%=rs("id")%>.jpg onerror="this.onerror=null;this.src='bilder//ingenbild.jpg';">
</code>Sv: Om bild inte finns -> visa en annan
Sv: Om bild inte finns -> visa en annan
Hur fungerar din kod Andreas? Ser ut som att den plockar ur alla filnamn från jpgfiler i en speciell katalog, in till en variabel.
Och sen om varibeln inte är tom så kör den en sql-kod där tabellens id-nummer inte ska finnas med i varibeln.
Korrekt? Isånnafall så är de inte riktigt vad jag söker.
Vill få fram ALLA poster, och sen visa tillhörande bilder OM dom finns i en katalog, annars så ska en annan förbestämd bild visas från en annan katalog.Sv: Om bild inte finns -> visa en annan
du använder den seda nåt sånt här:
<code>
Do Until rs.EOf
If rs("Existerar") Then
Response.Write "<IMG scr=""" & rs("FileName") & """>"
Else
Response.Write "<IMG scr=""/images/mising.gif"">"
End If
rs.MoveNext
Loop
</code>