Avatar billede mettecarsten Nybegynder
23. juli 2007 - 08:50 Der er 4 kommentarer og
1 løsning

Resize stort billede ved upload

Hej eksperter

Nedenstående kode fungerer reelt ok, men har lige nu fundet ud af, at store billeder ikke resizes - går formentlig galt, når størrelsen bliver lidt mere end 1600 x 1200 pixels.

Hvordan skal koden ændres, så alle billeder bliver resizet? Hvis ikke muligt, så forslag til anden løsning?

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='#666666' size='2'>>> Upload nyt billede</font></a><p>")

Else
%>
Avatar billede w13 Novice
23. juli 2007 - 15:22 #1
Hvilken fejlmeddelelse får du?

Servere er sat til at droppe en kode, hvis den bruger for lang tid på den. Kan ikke huske standardtiden. Men du kan selv ændre på denne tid med koden:
Server.ScriptTimeout=1000

Indsæt det øverst i dit dokument, og se om du kan uploade større billeder.
Avatar billede mettecarsten Nybegynder
24. juli 2007 - 05:52 #2
Jeg har desværre allerede denne kode indsat. Jeg får ikke nogen direkte fejlmeddelelse - blot bliver filen lagt på serveren i oprindelig størrelse - springer reelt blot call resize("/upload/" & Session("Bruger") & "/",billede,520) over.
Avatar billede w13 Novice
22. november 2007 - 23:20 #3
Lukketid?
Avatar billede mettecarsten Nybegynder
23. november 2007 - 05:16 #4
Ja, den mangler da at blive lukket. Smid et svar, og du får pointene.
Avatar billede w13 Novice
23. november 2007 - 14:05 #5
Okay! =)
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