Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585

    cambiare nome file nell' upload

    Ciao a Tutti,
    su internet ho copiato questa pagina di upload funzionante ...

    solo che con questo tipo di codice uno si trova a dover avere un prefisso almeno di 1 carattere (es. underscore) prima del vero nome del file che uno importa, il che da' molto fastidio ...

    Non si puo' fare in modo che, dopo aver scelto la cartella di destinazione, il nome del file sia costituito solo dal vero nome che uno richiama con SFOGLIA senza il prefisso "file " o quant' altro ???

    Grazie mille !!!!

    <HTML>

    <HEAD>
    <%@ Language= VBScript %>
    <%
    '
    Server.ScriptTimeout = 100000
    Response.Expires=0
    Response.Buffer = TRUE
    Response.Clear
    '
    '
    byteCount = Request.TotalBytes
    RequestBin = Request.BinaryRead(byteCount)
    Set UploadRequest = CreateObject("Scripting.Dictionary")
    BuildUploadRequest RequestBin
    '
    '
    contentType = UploadRequest.Item("file").Item("ContentType")
    filepathname = UploadRequest.Item("file").Item("FileName")
    tipo = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"."))
    '
    If tipo <> "zip" AND tipo <> "pdf" then
    Response.Write ("Errore. Non è possibile caricare un file diverso da zip o pdf !!" & tipo)
    Response.End
    else
    If byteCount > 3009000 then
    '
    Response.Write ("Errore. File troppo grande !!")
    Response.End
    else
    '
    nomefile = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
    filename = nomefile
    value = UploadRequest.Item("file").Item("Value")
    '
    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_I NFO")))-14
    '
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archivio/file ") & filename)
    'Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archiv io/_ ") & filename)
    For i = 1 to LenB(value)
    MyFile.Write chr(AscB(MidB(value,i,1)))
    Next
    MyFile.Close
    End If
    End If
    %>
    </HEAD>

    <BODY>
    <%
    Sub BuildUploadRequest(RequestBin)
    PosBeg = 1
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
    boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
    boundaryPos = InstrB(1,RequestBin,boundary)
    Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--")))
    Dim UploadControl
    Set UploadControl = CreateObject("Scripting.Dictionary")
    Pos = InstrB(BoundaryPos,RequestBin,getByteString("Conte nt-Disposition"))
    Pos = InstrB(Pos,RequestBin,getByteString("name="))
    PosBeg = Pos+6
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
    Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
    PosFile = InstrB(BoundaryPos,RequestBin,getByteString("filen ame="))
    PosBound = InstrB(PosEnd,RequestBin,boundary)
    If PosFile<>0 AND (PosFile<PosBound) Then
    PosBeg = PosFile + 10
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
    FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
    UploadControl.Add "FileName", FileName
    Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:"))
    PosBeg = Pos+14
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
    ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
    UploadControl.Add "ContentType",ContentType
    PosBeg = PosEnd+4
    PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
    Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
    Else
    Pos = InstrB(Pos,RequestBin,getByteString(chr(13)))
    PosBeg = Pos+4
    PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
    Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
    End If
    UploadControl.Add "Value" , Value
    UploadRequest.Add name, UploadControl
    BoundaryPos=InstrB(BoundaryPos+LenB(boundary),Requ estBin,boundary)
    Loop
    End Sub
    Function getByteString(StringStr)
    For i = 1 to Len(StringStr)
    char = Mid(StringStr,i,1)
    getByteString = getByteString & chrB(AscB(char))
    Next
    End Function

    Function getString(StringBin)
    getString =""
    For intCount = 1 to LenB(StringBin)
    getString = getString & chr(AscB(MidB(StringBin,intCount,1)))
    Next
    End Function
    %>
    </BODY>

    </HTML>

  2. #2
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archiv io/") & filename)

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Avevo gia' provato cosi', ma nella cartella archivio non trovo scaricato niente ...

    Boh ???

    Cartella di destinazione: archivio
    file che voglio archiviare: 0001.pdf

    Mettendo come mi hai detto mi scarica il file in una cartella, un livello piu' sopra della cartella "archivio", cioe' nella root e mi crea un file che si chiama: archivio_001.pdf

  4. #4
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archiv io/") "& filename)

    così?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    esattamente ...

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Mettendo:
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archiv io/") "&filename)

    mi da':

    Errore:Costante string senza terminazione

    mettendo:
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archiv io/") &filename)

    mi crea un file nella root come ti dicevo prima

  8. #8

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Se il mio file si chiama pippo.pdf

    se utilizzo la sintassi:
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath("archivio /") &filename)

    nella cartella archivio non crea niente

    mentre nella root mi crea un file che si chiama:
    archivio_pippo.pdf

    Strano no ??

  10. #10
    directory="\public\"

    Set MyFile = ScriptObject.CreateTextFile(Server.mappath(directo ry)&"\"&filename)

    fai una prova così...io lo uso sempre e funziona benissimo...

    Metti la directory dove vuoi caricare il file ma stai attento al percorso...io non ho capito come si chiama la tua directory...si chiama "archivio" ed è nella root principale?....hai i permessi di scrittura nella directory "archivio"?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.