Avatar billede jessbonde Nybegynder
10. juli 2003 - 12:50 Der er 17 kommentarer og
1 løsning

Upload til Gullestrup.net

Jeg har et dokument som skal uploade et billede, resize det og lægge filnavnet i en databse.

Gullestrup understøtter AspSmartUpload og aspImage.

Jeg kan ikke få den til at resize og jeg kan ikke trække filnavnet ud.

<%
' Variables
' *********
Dim mySmartUpload
Dim intCount
Dim file

'Object creation
'***************
Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
Set Image = Server.CreateObject("AspImage.Image")

'Upload
'******
mySmartUpload.Upload

'Save the files with their original names in a virtual path of the web server
'****************************************************************************
intCount = mySmartUpload.Save("../upload")

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(Server.Mappath("../upload"))
Set objFiles = objFolder.Files

For Each File in objFiles

        Image.LoadImage(File.path)
       
        If (image.MaxX > 50) then
            resizeX(50)
        end if
        if (image.maxY > 50) then
            resizeY(50)
        end if
       
        '*****************************SEND DB FORM***************************************
        Dim strDSN, myConn, strSQL, RS
        Set myConn = Server.CreateObject("ADODB.Connection")
        strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("../../db/feedback.mdb")
        myConn.Open strDSN
        '********************************INDSÆT TEXT I DB"*******************************
        overskrift = replace(mySmartUpload.form("overskrift"), "'", "''")
        tekst = replace(mySmartUpload.form("tekst"), "'", "''")

        strSQL = "INSERT INTO nyhed ([overskrift], [tekst], [billedfilnavn], [type], [mp3filnavn], [mp3click]) VALUES (" _
            & "'" & overskrift & "', " _
              & "'" & tekst & "', " _
            & "'" & File.filename & "', " _
            & "'billede', " _
            & "'&nbsp;', " _
            & "'&nbsp;')"
        set RS = myConn.execute(strSQL)
       

'sample with a physical path
intCount = mySmartUpload.Save("/upload/nyheder")

Set objFiles = Nothing
Set objFolder = Nothing
Set objFSO = Nothing

File.delete
Next

'--------------------------------------------------------------------------------------------
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

myConn.Close
set myConn = Nothing
%>
Avatar billede cesil Nybegynder
10. juli 2003 - 12:59 #1
Får du en fejlmeddelelse?
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:02 #2
nej
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:02 #3
Undskyld, vent lige...
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:04 #4
mht. filnavnet:

Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'filename'

/admin/upload_nyhed_billede.asp, line 51

Men mht. resize er der ingenting, den gemmer bare i den anden mappe
Avatar billede cesil Nybegynder
10. juli 2003 - 13:12 #5
hvad står der i linie 51
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:16 #6
Der starter min strSQL, men den er der ikke noget galt med. Hvis jeg sætter en tekststreng ind isteddet for File.filename, så kan den godt sætte det ind
Avatar billede dk_akj Nybegynder
10. juli 2003 - 13:28 #7
Du skal lige flytte dine

Set objFiles = Nothing
Set objFolder = Nothing
Set objFSO = Nothing

uden for din for each løkke.

//akj
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:37 #8
Men det løser ikke nogen af problemerne, der vil heller aldrig være mere en 1 fil i den pågældende mappe
Avatar billede dk_akj Nybegynder
10. juli 2003 - 13:44 #9
i = i + 1  ' ved ikke helt om denne linie skal stå efter fname = ....
    fname = MySmartUpLoad.Files.Item(i).FileName)
       
    strSQL = "INSERT INTO nyhed ([overskrift], [tekst], [billedfilnavn], [type], [mp3filnavn], [mp3click]) VALUES (" _
            & "'" & overskrift & "', " _
              & "'" & tekst & "', " _
            & "'" & fname & "', " _
            & "'billede', " _
            & "'&nbsp;', " _
            & "'&nbsp;')"
        set RS = myConn.execute(strSQL)


Hvad angår resize gemmer du jo ikke billedet efter resize.
Mener du skal bruge image.save

//akj
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:57 #10
Microsoft VBScript runtime error '800a01c2'

Wrong number of arguments or invalid property assignment: 'Files.Item'

/admin/upload_nyhed_billede.asp, line 53
Avatar billede jessbonde Nybegynder
10. juli 2003 - 13:58 #11
er der en parantes for meget eller en for lidt?

fname = MySmartUpLoad.Files.Item(i).FileName)
Avatar billede dk_akj Nybegynder
10. juli 2003 - 14:00 #12
fname = MySmartUpLoad.Files.Item(i).FileName

//akj
Avatar billede jessbonde Nybegynder
10. juli 2003 - 14:09 #13
Så langt så godt, hvad skal jeg skrive for at gemme?
Jeg bruger jo: intCount = mySmartUpload.Save("/upload/nyheder") nederst, men den gemmer jo åbenbart den oprindelige fil
Avatar billede dk_akj Nybegynder
10. juli 2003 - 14:15 #14
For at gemme den resizede fil skal du bruge image.saveimage
Denne funktion overskriver en eksisterende.
http://serverobjects.com/comp/Aspimage.htm

hvad laver denne ?? gemmer du din fil 2 steder ??
intCount = mySmartUpload.Save("/upload/nyheder")
øverst har du jo
intCount = mySmartUpload.Save("../upload")

Den nederste vil jeg mene skal fjernes.

//akj
Avatar billede jessbonde Nybegynder
10. juli 2003 - 14:28 #15
Nu gør jeg:

Image.FileName = "../upload/nyheder/" & id & ".jpg"
Image.SaveImage

id har værdien af sidste primær nøgleværdi indsat i db
Men der sker ingenting, den gemmer ikke
Avatar billede dk_akj Nybegynder
10. juli 2003 - 14:30 #16
image.filename = server.mappath("..") & "\upload\nyheder\" & id & ".jpg"

//akj
Avatar billede jessbonde Nybegynder
10. juli 2003 - 15:06 #17
Nu virker det.
Jeg behøver jo ikke: fname = MySmartUpLoad.Files.Item(i).FileName) når jeg alligevel skal omdøbe den.
Endelig... tusind tak ;o)
Avatar billede dk_akj Nybegynder
10. juli 2003 - 22:20 #18
selvtak :-)

//akj
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