Avatar billede kosmos Nybegynder
12. december 2006 - 20:36 Der er 3 kommentarer og
1 løsning

Resize af billede giver problemer

Hej Eksperter

Jeg har programmeret et fotoalbum for længe siden og har siden ikke lejet med asp, siden har virket upåklageligt indtil cirka dags dato.

Når jeg nu vil uploade et billede til galeriet får jeg denne fejl.

Microsoft VBScript runtime error '800a000b'
Division by zero
/ds-web/admin/do_knyt_album.asp, line 37

Herunder er koden hvori fejlen sker.

---------- Start ------------

Set Image = Server.CreateObject("AspImage.Image")
    Image.LoadImage Server.MapPath("..\..\billeder") & StrBillede
    Image.FileName = Server.MapPath("..\..\billeder\") & "\" & MyArray(1) & "\" & MyArray(2)
    Image.ImageFormat = 1
    Image.JPEGQuality = 90

    Sub ResizeX (intXSize)
      Dim intYSize
/linje 37/  intYSize = (intXSize / Image.MaxX) * Image.MaxY
      Image.ResizeR intXSize, intYSize
    end sub

    Sub ResizeY (intYSize)
      Dim intXSize
      intXSize = (intYSize / Image.MaxY) * Image.MaxX
      Image.ResizeR intXSize, intYSize
    end sub

    call ResizeX(400)

    IMAGE.SaveImage

    Image.LoadImage Server.MapPath("..\..\billeder") & StrBillede
    Image.FileName = Server.MapPath("..\..\billeder\") & "\" & MyArray(1) & "\" & "small_" & MyArray(2)
    Image.ImageFormat = 1
    Image.JPEGQuality = 90

    call ResizeX(150)

    IMAGE.SaveImage

    Conn.Close
Set Conn = Nothing

---------- Slut ----------

Kan nogen hjælpe mig vil jeg være taknemlig.
Avatar billede keysersoze Guru
12. december 2006 - 21:03 #1
har du prøvet kun med et billede eller med flere? fejlen siger et eller andet sted sig selv - nemlig at du ikke må dividere med 0. Hvorfor den gør det kan der være flere grunde til, mest nærliggende at dimensionerne på billedet ikke kan læses eller et det ikke er et billede.
Avatar billede ellebaek Nybegynder
12. december 2006 - 21:42 #2
jeg er ret sikker på at fejlen ligger i disse linier:

Image.LoadImage Server.MapPath("..\..\billeder") & StrBillede
    Image.FileName = Server.MapPath("..\..\billeder\") & "\" & MyArray(1) & "\" & MyArray(2)

er du helt sikker på at billedet ligger i den mappe du pejer på?

hmm...
faktisk mangler du en / i den første linie umiddelbart...
Image.LoadImage Server.MapPath("..\..\billeder") & StrBillede

prøv at rette ovenstående linie til:
Image.LoadImage Server.MapPath("..\..\billeder\") & StrBillede
Avatar billede kosmos Nybegynder
13. december 2006 - 02:10 #3
Ehm, jeg har ikke inkluderet hele asp koden, men kun den del hvor i fejlen lå.

<!-- #INCLUDE FILE="db_open.asp" -->
<%
Dim StrTekst, StrId, StrBillede, MyArray
StrTekst = Request.Form("tekst")
StrId = Request.QueryString("pict_id")

Sql = "Update gal_pict set "

Sql = Sql & "tekst= '" & StrTekst & "'"
Sql = Sql & " where id= '" & StrId & "'"

Conn.Execute(Sql)

Sql = "select billede from gal_pict where id=" & StrId
    Set rs = conn.execute(Sql)

StrBillede = rs("billede")

MyArray = Split(rs("billede"),"/")


'response.write Server.MapPath("..\..\billeder\") & "\" & MyArray(1) & "\" & MyArray(2)
'Conn.Close
'Set Conn = nothing
'response.end

Dim Image, IntYSize, IntXSize

Set Image = Server.CreateObject("AspImage.Image")
    Image.LoadImage Server.MapPath("..\..\billeder") & StrBillede
    Image.FileName = Server.MapPath("..\..\billeder\") & "\" & MyArray(1) & "\" & MyArray(2)
    Image.ImageFormat = 1
    Image.JPEGQuality = 90

    Sub ResizeX (intXSize)
      Dim intYSize
      intYSize = (intXSize / Image.MaxX) * Image.MaxY
      Image.ResizeR intXSize, intYSize
    end sub

    Sub ResizeY (intYSize)
      Dim intXSize
      intXSize = (intYSize / Image.MaxY) * Image.MaxX
      Image.ResizeR intXSize, intYSize
    end sub

    call ResizeX(400)

    IMAGE.SaveImage

    Image.LoadImage Server.MapPath("..\..\billeder") & StrBillede
    Image.FileName = Server.MapPath("..\..\billeder\") & "\" & MyArray(1) & "\" & "small_" & MyArray(2)
    Image.ImageFormat = 1
    Image.JPEGQuality = 90

    call ResizeX(150)

    IMAGE.SaveImage

    Conn.Close
Set Conn = Nothing

response.redirect "album_upload.asp"
%>

Måske det han kaste mere lys/mørke over sagen.

Husk at det har kørt uden problemer, og jeg har ikke ændret noget på siden.
Avatar billede kosmos Nybegynder
17. december 2006 - 10:25 #4
Billed komponenten på Serveren var i stykker. Administratoren geninstallerede den og så kørte scriptet igen.
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