Avatar billede cpccorp Juniormester
06. marts 2005 - 12:21 Der er 5 kommentarer og
1 løsning

AspImage gemme fil

Jeg har uploadet et billede og jeg vil gerne have aspImage til at resize størrelsen og gemme den igen, gemmer den oveni den aktuelle fil så
Avatar billede moejensen Nybegynder
06. marts 2005 - 16:08 #1
Her er en stump kode der gør det du ønsker:

Set Image = Server.CreateObject("AspImage.Image")
Image.LoadImage Server.MapPath("/images/Pictures/" & strFilename)
intWidth = 400
If (Image.MaxX > intWidth) OR (Image.MaxY > intWidth) Then
    If(Image.MaxX > Image.MaxY) Then
        intRatio = ((intWidth * 100) / Image.MaxX)
        intNewY = CInt(Image.MaxY * (intRatio / 100))
        Image.ResizeR intWidth, intNewY
        Image.ImageFormat = 1           
    Else
        intRatio = ((intWidth * 100) / Image.MaxY)
        intNewX = CInt(Image.MaxX * (intRatio / 100))
        Image.ResizeR intNewX, intWidth
        Image.ImageFormat = 1
    End if
End If
Image.FileName = Server.MapPath("/images/Pictures/" & strFilename)
Image.SaveImage
Set Image = Nothing
Avatar billede moejensen Nybegynder
06. marts 2005 - 16:10 #2
du skal så lige rettet stien så det passer til din kode:

Image.LoadImage Server.MapPath("/images/Pictures/" & strFilename)

og

Image.FileName = Server.MapPath("/images/Pictures/" & strFilename)

desuden skal du rette til så størrelsen passer til den størrelse du ønsker:

intWidth = 400
Avatar billede cpccorp Juniormester
06. marts 2005 - 16:39 #3
Problemer jeg hat følgende filer til upload og resize

listeimage.asp

<!-- #include file="../class/ini.inc" -->
<%
'Parametre
katid = request("katid")
grpid = request("grpid")
grpnavn = request("grpnavn")
katnavn = request("katnavn")
filen = request("FILE1")
dest = GetINIString("UPLOAD", "uploaddestination", "", server.mappath("../class/vbo_explorer.ini"))
dest = dest & katid & "\" & grpid

set Upload = Server.CreateObject("Persits.Upload.1")
Upload.IgnoreNoPost = True
Upload.SetMaxSize 50000, True
Count = Upload.Save(dest)
Set File = Upload.Files("FILE1")
%>
<html>

    <link rel="STYLESHEET" type="text/css" href="main.css">
    <link rel="STYLESHEET" type="text/css" href="gadget.css">
<head>
<%
if Not File Is Nothing then
%>
<meta http-equiv="refresh" content="1;URL=imageaction.asp?action=upload&grpid=<%=grpid%>&katid=<%=katid%>&grpnavn=<%=grpnavn%>&katnavn=<%=katnavn%>&filename=<%=File.Path%>">
<% end if %>
<meta http-equiv="Content-Language" content="da">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Ny side 3</title>
</head>

<body topmargin="10">

<div align="center">
  <center>

<table class="clsVindue" border="0" cellpadding="0" cellspacing="0" width="473" style="border-collapse: collapse; border: 1px solid #0066CC; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1" bordercolor="#111111" height="45">
  <tr class="clsTitel">
    <td  class="clsTitelKnap" width="244" height="17">BILLEDER - <%=ucase(katnavn) %></td>
    <td  class="clsTitelKnap" width="187" height="17"></td>
      </tr>
  <tr class="clsIndhold">
    <td width="461" colspan="2" align="center" height="29">
 
    <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
      <tr>
        <td width="22%" align="center" style="border-bottom: 1px solid #0066CC">
        <p align="left"><b><font size="2" color="#0066CC"><%=ucase(grpnavn)%></font></b></td>
        <td width="29%" align="center" style="border-bottom: 1px solid #0066CC">
        <p align="center"><font size="2" color="#0066CC"><b>&nbsp;</b></font></td>
        <td width="9%" align="center" style="border-bottom: 1px solid #0066CC">
        &nbsp;</td>
        <td width="20%" style="border-bottom: 1px solid #0066CC">
        <b><font size="2" color="#0066CC"> </font></b></td>
       
      </tr>
    <%
 
Dim Apples2

Set Apples2 = Server.CreateObject("ADODB.Connection")

ConnStr = "DRIVER={Microsoft Access Driver (*.mdb)}; "
ConnStr = ConnStr & "DBQ=" & Server.MapPath("../database/autocentret.mdb")
Apples2.Open(ConnStr)

sql = "SELECT * FROM imager WHERE gruppeid = " & grpid & " ORDER BY imagefilnavn"
              set rs = Apples2.execute(sql)
    while not rs.eof



Response.Write("        <td width=""31%""><b>" & rs("imagefilnavn") & "</b></td>" & vbcrlf)
Response.Write("        <td width=""9%"" align=""center""><a>&nbsp;</a></td>" & vbcrlf)
Response.Write("        <td width=""20%"" align=""center""><a href=""imageaction.asp?grpid=" & grpid & "&action=slet&katid=" & katid & "&katnavn=" & katnavn & "&grpnavn=" & grpnavn & "&file=" & rs("imagefilnavn") & "&imgid=" & rs("imageid") & """><img src=""../images/delete2.jpg""  border=""0"" alt=""Slet""></a></td>" & vbcrlf)
Response.Write("        <td width=""20%""> </td>" & vbcrlf)
Response.Write("      </tr>")
rs.MoveNext
        Wend
        rs.Close
       
        Apples2.Close
        set Apples2 = Nothing
        'flyt op/ned

%>   


</table><br>
<form Method="post" Enctype="Multipart/form-data" Action="listeimage.asp?grpid=<%=grpid%>&katid=<%=katid%>&grpnavn=<%=grpnavn%>&katnavn=<%=katnavn%>">
    <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2" height="69">
      <tr>
        <td width="100%" colspan="4" height="17" style="border-bottom: 2px solid #0000FF">
        <b><b><font size="2" color="#0066CC">UPLOAD BILLEDE</font></b></td>
      </tr>
      <tr>
        <td width="25%" height="12"></td>
        <td width="25%" height="12"></td>
        <td width="25%" height="12"></td>
        <td width="25%" height="12"></td>
      </tr>
      <tr>
        <td width="25%" height="12"><b><font size="2">Image/billede</font></b></td>
        <td width="75%" height="12" colspan="3">
        <input type="file" size=80 name="FILE1"></td>
      </tr>
      <tr>
        <td width="50%" height="12" colspan="2"><b><font color="#FF0000">OBS! Kun JPEG-filer</font></b></td>
        <td width="25%" height="12"></td>
        <td width="25%" height="12"></td>
      </tr>
      <tr>
        <td width="25%" height="12"></td>
        <td width="25%" height="12"></td>
        <td width="25%" height="12"></td>
        <td width="25%" height="12" align="right"><input type=submit value="  UPLOAD  "></td>
      </tr>
    </table>
    </form>
    </td>
  </tr>
  </table>
</center>
</div>

</body>

</html>

imageaction.asp

<!-- #include file="../class/ini.inc" -->
<%

'Parametre
dest = GetINIString("UPLOAD", "uploaddestination", "", server.mappath("../class/vbo_explorer.ini"))
Function KillFile(FullPathToFolder)
On Error Resume Next
Dim fs
Set fs = Server.CreateObject("Scripting.FileSystemObject")
fs.DeleteFile(FullPathToFolder)
Set fs = Nothing
End Function
Function GetFilename(ByVal strGetPath)
    Dim nPos, strFilename
    Dim strDir
    strFilename = ""
        strGetPath = cstr(strGetPath)
        if Not len(strGetPath) = 0 Then
            nPos = InStrRev(strGetPath, "\", Len(strGetPath))
            if nPos > 0 Then
                strFilename = Right(strGetPath, Len(strGetPath) - nPos)
                'Response.Write strFilename
            End if
            nPos = InstrRev(strGetPath, "\", Len(strGetPath) - nPos)
            if nPos > 0 Then
                strDir = Right(strGetPath, Len(strGetPath) - nPos)
            Else
                strDir = ""
            End if
        End if
        GetFilename = strFilename
    End function

select case request("action")
case "upload"


    Set objConn = CreateObject("ADODB.Connection")
    objConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../database/autocentret.mdb"))
   
        objConn.Execute "INSERT INTO imager(gruppeid,imagefilnavn,storvisning) VALUES(" & request("grpid") & ",'" & GetFileName(request("filename")) & "',true)"
            objConn.Close
    Set objConn= Nothing
response.redirect("thumbnail.asp?katid=" & request("katid") & "&grpnavn=" & request("grpnavn") & "&katnavn=" & request("katnavn") & "&grpid=" & request("grpid") & "&filename=" & GetFileName(request("filename")))

case "resize"

case "slet"
Set objConn = CreateObject("ADODB.Connection")
    objConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../database/autocentret.mdb"))
   
        objConn.Execute "DELETE FROM imager WHERE imageid = " & request.querystring("imgid")
            objConn.Close
    Set objConn= Nothing
KillFile dest & request("katid") & "\" & request("grpid") & "\" & request("file")
response.redirect("listeimage.asp?katid=" & request("katid") & "&grpnavn=" & request("grpnavn") & "&katnavn=" & request("katnavn") & "&grpid=" & request("grpid") & "&filename=" & request("filename"))

end select
%>


thumbnail.asp

<!-- #include file="../class/ini.inc" -->
<%
katid = request("katid")
grpid = request("grpid")
grpnavn = request("grpnavn")
katnavn = request("katnavn")
filen = GetFilename(request("filename"))
small = small_" & left(filen, (len(filen)-4))
dest = GetINIString("UPLOAD", "uploaddestination", "", server.mappath("../class/vbo_explorer.ini"))
dest = dest & katid & "\" & grpid


Function GetFilename(ByVal strGetPath)
    Dim nPos, strFilename
    Dim strDir
    strFilename = ""
        strGetPath = cstr(strGetPath)
        if Not len(strGetPath) = 0 Then
            nPos = InStrRev(strGetPath, "\", Len(strGetPath))
            if nPos > 0 Then
                strFilename = Right(strGetPath, Len(strGetPath) - nPos)
                'Response.Write strFilename
            End if
            nPos = InstrRev(strGetPath, "\", Len(strGetPath) - nPos)
            if nPos > 0 Then
                strDir = Right(strGetPath, Len(strGetPath) - nPos)
            Else
                strDir = ""
            End if
        End if
        GetFilename = strFilename
    End function



Set Image = Server.CreateObject("AspImage.Image")
Image.LoadImage Server.MapPath("../biler/" & katid & "/" & grpid & "/" & request("filename"))
intWidth = 130
If (Image.MaxX > intWidth) OR (Image.MaxY > intWidth) Then
    If(Image.MaxX > Image.MaxY) Then
        intRatio = ((intWidth * 100) / Image.MaxX)
        intNewY = CInt(Image.MaxY * (intRatio / 100))
        Image.ResizeR intWidth, intNewY
        Image.ImageFormat = 1           
    Else
        intRatio = ((intWidth * 100) / Image.MaxY)
        intNewX = CInt(Image.MaxX * (intRatio / 100))
        Image.ResizeR intNewX, intWidth
        Image.ImageFormat = 1
    End if
End If
Image.FileName = Server.MapPath("../biler/" & katid & "/" & grpid & "/" & request("filename"))
Image.SaveImage
Set Image = Nothing

'response.redirect("listeimage.asp?katid=" & katid & "&grpnavn=" & grpnavn & "&katnavn=" & katnavn & "&grpid=" & grpid)

%>
<html>

<head>

<meta http-equiv="refresh" content="1;URL=listeimage.asp?katid=<%=katid%>&grpnavn=<%=grpnavn%>&katnavn=<%=katnavn%>&grpid=<%=grpid%>">

<meta http-equiv="Content-Language" content="da">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Ny side 3</title>
</head>

<body></body></html>


Problemet er ikke at uploade og tilføje til database, men når det er sket viser den en "SIDEN KAN IKKE VISES"
Avatar billede moejensen Nybegynder
06. marts 2005 - 16:48 #4
prøv at fjern

<meta http-equiv="refresh" content="1;URL=listeimage.asp?katid=<%=katid%>&grpnavn=<%=grpnavn%>&katnavn=<%=katnavn%>&grpid=<%=grpid%>">

og skriv noget mellem body tagsne, for at se om den komme igennem siden
Avatar billede cpccorp Juniormester
06. marts 2005 - 19:01 #5
Hvorfor det ikke virkede ved jeg ikke men jeg startede bare forfra med thumbnail.asp og fik dette:


<%

katid = request("katid")
grpid = request("grpid")
grpnavn = request("grpnavn")
katnavn = request("katnavn")


Set Image = Server.CreateObject("AspImage.Image")
Image.LoadImage Server.MapPath("../biler/" & katid & "/" & grpid & "/" & request("filename"))
intWidth = 130
If (Image.MaxX > intWidth) OR (Image.MaxY > intWidth) Then
    If(Image.MaxX > Image.MaxY) Then
        intRatio = ((intWidth * 100) / Image.MaxX)
        intNewY = CInt(Image.MaxY * (intRatio / 100))
        Image.ResizeR intWidth, intNewY
        Image.ImageFormat = 1           
    Else
        intRatio = ((intWidth * 100) / Image.MaxY)
        intNewX = CInt(Image.MaxX * (intRatio / 100))
        Image.ResizeR intNewX, intWidth
        Image.ImageFormat = 1
    End if
End If
Image.FileName = Server.MapPath("../biler/" & katid & "/" & grpid & "/small_" & request("filename"))
Image.SaveImage
Set Image = Nothing

response.redirect("imageaction.asp?action=resize&katid=" & katid & "&grpnavn=" & grpnavn & "&katnavn=" & katnavn & "&grpid=" & grpid & "&filename=" & request("filename"))

%>

og nu virker det...

Læg et svar
Avatar billede moejensen Nybegynder
06. marts 2005 - 19:28 #6
det er godt at høre.

Her er et svar
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