Avatar billede mettecarsten Nybegynder
26. juli 2007 - 07:57 Der er 5 kommentarer og
1 løsning

Upload og resize virker nu ikke i exp 7.0

Hej eksperter

Jeg har med stor succes brugt nedenstående kode til upload af billeder og efterfølgende resize. Efter installering af explorer 7.0 virker resize-funktionen ikke ved større billeder????

Kan jeg ændre noget i koden? Eller har I forslag til en helt anden måde til upload og resize?

Virkelig på forhånd tak.

<%
            function resize(sti,navn,nyX)
    Set objImg = Server.CreateObject("AspImage.Image")
        objImg.PadSize = 0
        objImg.LoadImage Server.MapPath(sti & navn)
        objImg.GetImageFileSize Server.MapPath(sti & navn), X, Y
   
        ResizedX = nyX
        objImg.MaxX = X
        objImg.MaxY = Y
   
        if X > ResizedX then
            ResizedY = (ResizedX / objImg.MaxX) * objImg.MaxY
            objImg.ResizeR ResizedX, ResizedY
            objImg.FileName = (Server.MapPath(sti & navn))
            objImg.SaveImage
        end if
   
    Set objImg = Nothing
end function

If Request("s") = "upload" Then

  Dim mySmartUpload
  Dim file1
  Dim intCount
  intCount=0

  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
 
  'limit the file extensions to pictures files
  mySmartUpload.allowedFilesList="jpg,jpeg"
  On Error Resume Next
 
  mySmartUpload.Upload

  For each file1 In mySmartUpload.Files

      If not file1.IsMissing Then
       
        'file1.SaveAs("/upload/" & Session("Bruger") & "/" & file1.FileName)
        billede = file1.FileName
        billede = replace(billede, " ", "_")
        billede = replace(billede, ",", "_")
        billede = replace(billede, "'", "_")
        billede = replace(billede, "æ", "_")
        billede = replace(billede, "Æ", "_")
        billede = replace(billede, "ø", "_")
        billede = replace(billede, "Ø", "_")
        billede = replace(billede, "å", "_")
        billede = replace(billede, "Å", "_")
        billede = replace(billede, "JPG", "jpg")
        file1.SaveAs("/upload/" & Session("Bruger") & "/" & billede)
       
          SQL = "INSERT INTO Upload(Bruger, Billede)"
            SQL = SQL & "Values("
            SQL = SQL & "'" & Session("Bruger") & "',"
            SQL = SQL & "'" & billede & "'"
            SQL = SQL & ")"
           
            Conn.Execute(SQL)

        Response.Write("<font face='Verdana' color='#000000' size='2'>Du har netop uploadet dette billede: " & billede & "</font><p>")
        call resize("/upload/" & Session("Bruger") & "/",billede,520)
        Response.Write("<font face='Verdana' color='#000000' size='2'><img src=""/upload/" & Session("Bruger") & "/" & billede & """ title=""Dit billede er nu uploadet""></font><br>")
        intCount = intCount + 1
      End If
  Next
 
If Err Then
  'Der opstod en fejl
  Response.Write("<p><font face='Verdana' color='#666666' size='2'>Fejl, du har forsøgt at uploade et ugyldigt billedeformat. Kun .jpg filer er gyldige.</font><p>")
  End If

Response.Write("<p><a href='adminsideupload.asp'><font face='Verdana' color='#000000' size='2'>>> Upload nyt billede</font></a><p>")

Else
%>
Avatar billede keysersoze Ekspert
26. juli 2007 - 08:09 #1
browser-versionen bør ikke have noget indflydelse på hvordan serverside-koden afhvilkes - jeg bruger selv både aspsmartupload og aspimage uden problemer uanset browser. Får du ingen fejl eller lignende udskrevet?
Avatar billede mettecarsten Nybegynder
26. juli 2007 - 08:18 #2
Ja, nu bliver det mystisk. I går kunne jeg ikke uploade fra denne computer (også prøve andre dage fra andre computere med 7.0). Endte med, at billedet godt nok blev uploadet, blev vist på skærmen, men ikke resizet og fik teksten "Fejl, du har forsøgt at uploade et ugyldigt billedeformat. Kun .jpg filer er gyldige.". I går aftes prøvede jeg fra en anden computer, som kørte 6.0 og her fungerede det fint.

Nu kommer det mystiske - har igen lige prøvet på denne computer og nu virker det ????? call resize("/upload/" & Session("Bruger") & "/",billede,520) virker lidt "simpel" - er koden altid stabil?? Evt. problemer hos vores udbyder??

Virkelig tak for hjælpen.
Avatar billede keysersoze Ekspert
26. juli 2007 - 17:20 #3
Det tror jeg er så godt som umuligt at svare på - hvis vi skal kunne komme det mere lettere tror jeg at du bliver nødt til at logge fejlen inde i din "if err then" (fx ved at sende en mail til dig selv eller skrive til en .txt-fil).
Avatar billede mettecarsten Nybegynder
27. juli 2007 - 16:32 #4
Ok, du har vel ikke lige en kode til en sådan logning? Ellers husk at smide et svar for pointene
Avatar billede keysersoze Ekspert
27. juli 2007 - 17:53 #5
du kan bruge fx "Err.Description" i din if;

Response.Write Err.Description

Hvis du vil have det sendt i en mail afhænger det af mailkomponent på serveren - vil du have en fil kan du bruge fso; http://www.opfinderen.dk/sites/70
Avatar billede mettecarsten Nybegynder
28. juli 2007 - 07:05 #6
Super, et rigtig godt link. Mange tak for hjælpen.
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