Avatar billede mrjowns Novice
26. marts 2004 - 15:20 Der er 5 kommentarer og
1 løsning

aspSmartUpload - kan ikke gemme

Jeg har dette script:

<%
Dim mySmartUpload
Dim file
Dim intCount
intCount=0

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.Upload

  if mySmartUpload.form("new") = 0 then
 
    Set rs= Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT item_img FROM shop_item WHERE id = '" & mySmartUpload.form("id") & "'"
    Set rs = MySQLConn.Execute(SQL)

    Set fso = Server.CreateObject("Scripting.FileSystemObject")
    fso.DeleteFile ("d:\web\xxx.dk\www\files\" & rs("item_img"))

    file.SaveAs("d:\web\xxx.dk\www\files\" & file.FileName)
   
    SQL1 = "UPDATE shop_item SET item_img = '" & file.Name & "' WHERE id = '" & mySmartUpload.form("id") & "'"
    MySQLConn.Execute(SQL1)
   
    fso.Close
    Set fso = Nothing

    rs.Close
    Set rs = Nothing

  else
 
    file.SaveAs ("d:\web\xxx.dk\www\files\" & file.FileName)
   
    SQL1 = "UPDATE shop_item SET item_img = '" & file.Name & "' WHERE id = '" & mySmartUpload.form("id") & "'"
    MySQLConn.Execute(SQL1)
 
  end if
%>

Uanset hvad jeg gør får jeg denne fejl:

Microsoft VBScript runtime error '800a01a8'
Object required: ''

Fejlen er i denne linie:

file.SaveAs ("d:\web\xxx.dk\www\files\" & file.FileName)

Kan nogen hjælpe?
Avatar billede keysersoze Ekspert
26. marts 2004 - 15:35 #1
hvis du alligevel gemmer billedet som det det allerede hedder behøver du ikke bruge saveas - så kan du nøjes med

mySmartUpload.Save(":\web\xxx.dk\www\files\")

hvis du endelig vil bruge saveas med det du har skrevet bliver du nødt til at fortælle scriptet hvad "file" er i "file.filename" ved fx

For each file In mySmartUpload.Files
...
Next
Avatar billede mrjowns Novice
26. marts 2004 - 15:48 #2
Tak soze, det hjalp! Men kan du lige fortælle mig hvorfor jeg ikke kan bruge file.Name i den nedenstående SQL-sætning - der får jeg nemlig samme fejl:

Microsoft VBScript runtime error '800a01a8'
Object required: ''
Avatar billede keysersoze Ekspert
26. marts 2004 - 15:52 #3
Det samme - du har ikke "initialiseret" file og derfor ved den ikke hvad den skal kigge efter.

måske kan du prøve med

Set file = mySmartUpload.Save(":\web\xxx.dk\www\files\")
Avatar billede mrjowns Novice
26. marts 2004 - 15:57 #4
Nu skrev jeg:
Set file = mySmartUpload.Save("d:\web\onlineport.dk\www\files\")

...og får denne fejl:
Microsoft VBScript runtime error '800a01a8'
Object required: 'Save(...)'

Hvordan kan jeg evt. initialisere file så jeg kan bruge file.Name?
Avatar billede mrjowns Novice
26. marts 2004 - 16:26 #5
Tak for hjælpen - jeg prøver selv at finde ud af resten! :o)
Avatar billede keysersoze Ekspert
26. marts 2004 - 17:52 #6
Set File = Upload.Files(1)
File.SaveAs ("d:\web\onlineport.dk\www\files\")
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