Avatar billede dino84 Nybegynder
24. april 2005 - 02:35 Der er 11 kommentarer og
1 løsning

Vælge mappe i dropdown til upload

Jeg har et stykke kode der uploader en fil til en bestemt mappe...

Det virker fint så længe jeg ikke bruger den dropdown menu...

Men hvorfor virker det så ikke lige så snart jeg vil vælge en mappe via den dropdown menu?

Jeg har oprettet mapperne der er mulighed for at vælge men når jeg vil uploade en fil ender de bare i kunder mappen..?

Hvad gør jeg forkert?

<% side = request ("side")
if side="" then %>
<table width="90%" border="0" class="tekst" align="center">
<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="upload2.asp?side=gem_upload">
<tr><td width="30%">mappe</td>
<td><select name="folder" id="select">
<option value="test">Test</option>
<option value="test2">Test2</option>
</select></td>
<td width="6%">&nbsp;</td>
</tr>
<tr>
<td width="30%">fil:</td>
<td> <INPUT TYPE="FILE" class="forms" NAME="THEFILE" size="30"></td>
<td width="6%">&nbsp;</td>
</tr>
<tr>
<td width="30%">&nbsp;</td>
<td align="center">
<INPUT TYPE=SUBMIT class="forms" VALUE="Upload!">
</td>
<td width="6%">&nbsp;</td>
</tr></FORM>
</table>
<%end if%>



<!-- ASP Upload Start -->   
<%if side="gem_upload" then

    Set Upload = Server.CreateObject("Persits.Upload")

    ' we use memory uploads, so we must limit file size
    Upload.SetMaxSize 250000, True
   
  ' Intercept all exceptions to display user-friendly error
    On Error Resume Next

    ' Save to memory. Path parameter is omitted
    Upload.OverwriteFiles = False
   
    '// RETTELSE HER - ret stien til din profil billede mappe..
        sti = "d:\web\brian.dk\laki\kunder"
    newfolderpath = sti & "\" & Upload.form("folder")

    Count = Upload.Save(newfolderpath)
   
    ' 8 is the number of "File too large" exception
        If Err.Number = 8 Then
          Response.Write "Billede filen er for store, max 250 kb."
    Else
          If Err <> 0 Then
        Response.Write "ERROR! : " & Err.Description
  Else
      Response.Write Count & " fil(er) uploaded til "& newfolderpath &"<BR>"
  End If
End If %>

<%end if%>
<!-- ASP Upload Slut -->
Avatar billede busschou Praktikant
24. april 2005 - 08:09 #1
måske fordi alt der ikke er filer skal requestes normalt
Prøv
newfolderpath = sti & "\" & request.form("folder")
Avatar billede dino84 Nybegynder
24. april 2005 - 10:45 #2
kan du så fortælle mig hvad de mener her? http://support.persits.com/show.asp?code=PS02022586
Avatar billede busschou Praktikant
24. april 2005 - 10:51 #3
Tja det står jo rimeligt klart
Du må ikke benytte request.form fordi det ødelægger ens collection
Omvendt skal man benytte upload.form ...men den må først benyttes efter man har brugt upload.save
Ud fra det der står i dit link virker det så som om det ikke kan lade sig gøre
hmm :(
Avatar billede busschou Praktikant
24. april 2005 - 10:56 #4
Du kan selvfølgelig omgå det ved at sætte mappen i en session
Avatar billede dino84 Nybegynder
24. april 2005 - 10:56 #5
hmm.. det må da kunne lade sig gøre på en eller anden måde?
Avatar billede busschou Praktikant
24. april 2005 - 11:02 #6
Du kan lave din dropdown først i en form. Submitte til samme side. Når den er submittet sætte en session og benytte denne session i scriptet
----
<% if request.form ("folder") == "" then %>
<form method="post" action="DENNE_SIDE.asp">
<select name="folder" id="select" onchange="this.form.submit();">
  <option value="test">Test</option>
  <option value="test2">Test2</option>
</select>
</form>
<% else
session("folder") = request.form("folder") %>
<table width="90%" border="0" class="tekst" align="center">
<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="upload2.asp?side=gem_upload">
<tr><td width="30%">mappe</td>
<td><%=session("folder")</td>
<td width="6%">&nbsp;</td>
</tr>
<tr>
<td width="30%">fil:</td>
<td> <INPUT TYPE="FILE" class="forms" NAME="THEFILE" size="30"></td>
<td width="6%">&nbsp;</td>
</tr>
<tr>
<td width="30%">&nbsp;</td>
<td align="center">
<INPUT TYPE=SUBMIT class="forms" VALUE="Upload!">
</td>
<td width="6%">&nbsp;</td>
</tr></FORM>
</table>
<%end if%>



<!-- ASP Upload Start --> 
<%if side="gem_upload" then

    Set Upload = Server.CreateObject("Persits.Upload")

    ' we use memory uploads, so we must limit file size
    Upload.SetMaxSize 250000, True
 
  ' Intercept all exceptions to display user-friendly error
    On Error Resume Next

    ' Save to memory. Path parameter is omitted
    Upload.OverwriteFiles = False
 
    '// RETTELSE HER - ret stien til din profil billede mappe..
        sti = "d:\web\brian.dk\laki\kunder"
    newfolderpath = sti & "\" & session("folder")

    Count = Upload.Save(newfolderpath)
 
    ' 8 is the number of "File too large" exception
        If Err.Number = 8 Then
          Response.Write "Billede filen er for store, max 250 kb."
    Else
          If Err <> 0 Then
        Response.Write "ERROR! : " & Err.Description
  Else
      Response.Write Count & " fil(er) uploaded til "& newfolderpath &"<BR>"
  End If
End If %>

<%end if%>
<!-- ASP Upload Slut -->
Avatar billede dino84 Nybegynder
24. april 2005 - 11:03 #7
Oki hvordan gøres det så? Jeg kender ikke så meget til at lave en session
Avatar billede busschou Praktikant
24. april 2005 - 11:03 #8
som ovenstående :o) .. pånær jeg har skrevet == .. det er selvfølgelig nok med eet =
Avatar billede dino84 Nybegynder
24. april 2005 - 11:10 #9
Så virker det :D

Det var super...

Smid et svar så får du points...
Avatar billede busschou Praktikant
24. april 2005 - 11:11 #10
kanon :o) Dejligt når det virker....(selvom jeg stadig ikke rigtig forstår hvorfor det ikke bare kunne virke normalt hehe)
Avatar billede dino84 Nybegynder
24. april 2005 - 11:14 #11
Det jo det.. Jeg har forsøgt på alle mulige måder hvor jeg hvergang har fået fejl eller den har uploadet til "rod" mappen...
Avatar billede busschou Praktikant
24. april 2005 - 11:15 #12
Det eneste du selvfølgelig herudover skal huske..det er at der er skriverettighedder til de mapper du vælger imellem :o) .. tak for points
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