Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 08:49 Der er 11 kommentarer og
1 løsning

rename uploaded file

Håber på lidt hjælp.

Jeg har prøvet dette vedr. et upload script:

Set Upload = Server.CreateObject("Persits.Upload")
Count = Upload.Save("d:\www\comgros.dk\kundebilleder\")

set fso = CreateObject("Scripting.FileSystemObject")

    For Each File in Upload.Files
    set f = fso.getfile(File.Path)
    extension = fso.Getextensionname(File.Path)
    f.name = request.form("kundeid") & "." & extension   
    Next



Problemet er vistnok man ikke kan bruge "request.form" sammen med binær kode ??

Men det er eneste måde jeg kan finde ud af at hente data på.

Hvad kan jeg ellers gøre for at få "kundeid" til fil navn???

PS: i den originale kode bruges "session" i stedet for request.form, men jeg aner ikke hvad session er og hvordan man bruger dette.

Denne kode ser sådan her ud:

For Each File in Upload.Files
    set f = fso.getfile(File.Path)
    extension = fso.Getextensionname(File.Path)
    f.name = session("kundeid") & "." & extension   
    Next


200 point for brugbart svar da det er meget vigtigt.


Det eneste jeg skal kunne er at omdøbe en uploaded fil da jeg ikke tror man med Persits.Upload kan ændre fil navnet før upload.
Avatar billede nozio Nybegynder
25. oktober 2002 - 09:00 #1
Jeg mener Persits.Upload (ASpupload) bruger:

file.Move "d:\www\comgros.dk\kundebilleder\" & request.form("kundeid") & "." & extension

dit kundeid - skal jo så være med som en formfelt (måske hidden) i din upload form
Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 09:10 #2
Jeg har 'kundid' i et hidden field, jeg prøver lige om det virker.
Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 09:16 #3
Det giver samme fejl:

Request object error 'ASP 0207 : 80004005'

Cannot use Request.Form

/admin/UploadScript1.asp, line 9

Cannot use Request.Form collection after calling BinaryRead.
Avatar billede loss Nybegynder
25. oktober 2002 - 10:04 #4
Name = Upload.Form("Name")

For Each File in Upload.Files
    set f = fso.getfile(File.Path)
    extension = fso.Getextensionname(File.Path)
    f.name = name & "." & extension   
    Next

Prøv brug det der...
Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 10:34 #5
Giver fejlen:
Microsoft VBScript runtime error '800a01a8'

Object required: ''

/admin/UploadScript1.asp, line 13
Linie      f.name = name & "." & extension   

Name er ikke en variable
Avatar billede loss Nybegynder
25. oktober 2002 - 10:43 #6
dim Name
Name = Upload.Form("Name")

For Each File in Upload.Files
    set f = fso.getfile(File.Path)
    extension = fso.Getextensionname(File.Path)
    f.name = name & "." & extension   
    Next

Prøv brug det der...
Avatar billede loss Nybegynder
25. oktober 2002 - 10:44 #7
Skriv lige denne linie
f.name = Name & "." & extension

så er der ikke forvirring mellem store/små bogstaver
Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 10:47 #8
Jeg ændrede til
Name = Upload.Form("keyword")

For Each File in Upload.Files
    set f = fso.getfile(File.Path)
    extension = fso.Getextensionname(File.Path)
    f.name = (Name) & "." & extension   
    Next



så virker det :)

Har du også løsninget på hvordan jeg ændrer extension til altid at vare 'fwd'
Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 10:47 #9
Det var n og N der drillede :-)
Avatar billede loss Nybegynder
25. oktober 2002 - 10:50 #10
det var da super..... kigger lige lidt efter det andet der....

// Loss
Avatar billede loss Nybegynder
25. oktober 2002 - 10:53 #11
Kan du ikke bare skrive
f.name = (Name) & ".fwd"
Avatar billede bigtrouble Nybegynder
25. oktober 2002 - 11:18 #12
hehe joda, nu står den sgu stille,,,,point til dig.
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