Avatar billede crayzee Nybegynder
12. marts 2008 - 23:26 Der er 9 kommentarer

automatiserer script

hey, jeg har fundet et fedt gallery, desværre skal jeg selv skrive alle billedstierne ind manuelt, det kunne jeg godt tænke mig at få automatiseret :) galleriet kan hentes her http://vikjavev.no/highslide/download-confirm.php?file=download%2Fhighslide-3.3.12.zip og i mappen er det filen example-white-10px.html jeg bruger.

udover det, kan man ikke udskifte:

<a href="images/full-image.jpg" class="highslide" onclick="return hs.expand(this)">
    <img src="images/thumbnail.jpg" alt="Highslide JS"
        title="Click to enlarge" height="120" width="107" /></a>


med noget asp der selv henter billederne og bruger paging

please :) har ledt længe efter noget der virker
Avatar billede keysersoze Ekspert
13. marts 2008 - 20:00 #1
hvis billederne ligger i en mappe på serveren kan du bruge dette;

http://www.html.dk/scripts/asp/00011/
Avatar billede crayzee Nybegynder
15. marts 2008 - 18:19 #2
lækkert :) det er ikke sådan så du ved hvordan det skal sættes sammen for jeg kan ikke få det til at virke når jeg prøver :/
Avatar billede keysersoze Ekspert
15. marts 2008 - 23:31 #3
hvis du kommer med lidt kode for hvor langt du er nået og evt nogle fejlmeddelelser du støder på kan vi da prøve at kigge på det.
Avatar billede crayzee Nybegynder
16. marts 2008 - 12:32 #4
det vil jeg da så gøre. ind til videre har jeg fået stykket følgende kode sammen:

<%
ImageDir = "/images/" ' Mappen med filerne
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFS.GetFolder(Server.MapPath(ImageDir))
Set objFiles = objFolder.Files

intPage = Request.Querystring("page")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

intPageSize = 3 ' Antal filer på hver side
intImgCount = objFiles.Count
intPageCount = -Int(-(intImgCount/intPageSize))

Response.Write "<p><strong>" & intImgCount & " Billeder - "
Response.Write "viser side " & intPage & " af " & intPageCount & ":</strong></p>"

For Each Image In objFiles
intFile = intFile +1
If (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =< (intPageSize*intPage)) Then
Response.Write "<p><a href='" & ImageDir & Image.Name & "' class="highslide" onclick="return hs.expand(this)"> /></a></p>"       
End If
Next

strScriptName = Request.Servervariables("ScriptName")
Response.Write "<p>Gå til side "
For i = 1 To intPageCount
Response.Write "<a href=" & strScriptName & "?page=" & i & ">" & i & "</a> "   
Next
Response.Write "</p>"
Set objFS = Nothing
%>

jeg har ændret fra det gamle:
<a href="images/full-image.jpg" class="highslide" onclick="return hs.expand(this)">
    <img src="images/thumbnail.jpg" alt="Highslide JS"
        title="Click to enlarge" height="120" width="107" /></a>

til:
<a href='" & ImageDir & Image.Name & "' class="highslide" onclick="return hs.expand(this)"> /></a>

men desværre når jeg kører hele koden får jeg fejlen:

Fejltype:
Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0401)
Slut på sætning var ventet
/index.asp, line 22, column 66
Response.Write "<p><a href='" & ImageDir & Image.Name & "' class="highslide" onclick="return hs.expand(this) /></a></p>"
Avatar billede keysersoze Ekspert
16. marts 2008 - 13:01 #5
du skal sørge for at escape alle "-tegn når det indsættes i en response.write - dvs;

Response.Write "<p><a href=""" & ImageDir & Image.Name & """ class=""highslide"" onclick=""return hs.expand(this);"" /></a></p>"
Avatar billede crayzee Nybegynder
16. marts 2008 - 13:10 #6
hmm den skriver fejlen

Fejltype:
Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0412)
Det skal være den første sætning på linjen
/highslide/ex.asp, line 140, column 127
Response.Write "<p><a href=""" & ImageDir & Image.Name & " class=""highslide"" onclick=""return hs.expand(this);"" /></a></p>" End If
------------------------------------------------------------------------------------------------------------------------------^
Avatar billede crayzee Nybegynder
16. marts 2008 - 13:34 #7
nu virker det men der er ingen billeder :/
Avatar billede keysersoze Ekspert
16. marts 2008 - 14:37 #8
hov - manglede også lidt;

Response.Write "<p><a href=""" & ImageDir & Image.Name & """ class=""highslide"" onclick=""return hs.expand(this);"" /></a></p>"

Hvis der ingen billeder er kunne det tyde på at stien til billederne er angivet forkert. Du kan evt prøve at udskrive Server.MapPath(ImageDir) og se om det stemmer overens med den rigtige placering.
Avatar billede keysersoze Ekspert
15. maj 2008 - 12:53 #9
lukketid?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester