Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Upload

  1. #1
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314

    Upload

    Ragazzi sono ormai giunto quasi alla fine ma ho bisogno di un vostro aiuto...
    Sono riuscito a scrivere,leggere,ecc da db ma ora dovrei fare anche l'upload dei file.

    Ho creato un form che mi permetta di inserire:

    Titolo:

    Testo:


    UPLOAD


    Invia

    Il mio problema è che nella pagina per salvare sul db non so come inserire il codice per l'upload.

    Al momento ho un form per inserire titolo ed articolo e nella pagina che riceve ho inserito questo:
    codice:
    <%@LANGUAGE="VBSCRIPT"%>
    
    <% 
    titolo = request.form("titolo")
    articolo= request.form("articolo")
    
    SQL = "select * from elenco"
    
    Set rs = Server.CreateObject( "ADODB.Recordset" )
    rs.Open SQL,Con, 2,2
    
    rs.addnew
    
    rs("titolo") = titolo
    rs("articolo") = articolo
    
    
    rs.update
    rs.close
    set rs = nothing
    con.close
    set con = nothing
    
    response.Redirect("index.asp")
    %>
    Vorrei fare in modo che nella stessa pagina si salvi sul db si carichi il file...come posso fare?
    trovato uno script di esempio dul form ma come lo inserisco?
    codice:
    <%
    Server.ScriptTimeout = 200
    
    'variabili di configurazione
    Dim folder
    folder = "/public"  			'directory sul server con accesso in scrittura
    'fine variabili di configurazione
    
    Response.Expires=0
    Response.Buffer = TRUE
    Response.Clear
    
    Sub BuildUploadRequest(RequestBin)
    	PosBeg = 1
    	PosEnd =  InstrB(PosBeg,RequestBin,getByteString(c
    hr(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")
    		'Get an object name
    		Pos =  InstrB(BoundaryPos,RequestBin,getByteStr
    ing("Content-Disposition"))
    		Pos = InstrB(Pos,RequestBin,getByteString("name="))
    		PosBeg = Pos+6
    		PosEnd =  InstrB(PosBeg,RequestBin,getByteString(c
    hr(34)))
    		Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
    		PosFile =  InstrB(BoundaryPos,RequestBin,getByteStr
    ing("filename="))
    		PosBound = InstrB(PosEnd,RequestBin,boundary)
    			If  PosFile<>0 AND (PosFile<PosBound) Then
    			PosBeg = PosFile + 10
    			PosEnd =   InstrB(PosBeg,RequestBin,getByteString(c
    hr(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(c
    hr(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(bo
    undary),RequestBin,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
    
    byteCount = Request.TotalBytes
    
    RequestBin = Request.BinaryRead(byteCount)
    Dim UploadRequest
    Set UploadRequest = CreateObject("Scripting.Dictionary")
    
    BuildUploadRequest  RequestBin
    
    contentType = UploadRequest.Item("userfile").Item("ContentType")
    filepathname = UploadRequest.Item("userfile").Item("FileName")
    filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
    session("userfile") = filename
    value = UploadRequest.Item("userfile").Item("Value")
    
    'Create FileSytemObject Component
    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    
    'Create and Write to a File
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath(folder)&"\"&filename)
     
    For i = 1 to LenB(value)
    	MyFile.write chr(AscB(MidB(value,i,1)))
    Next 
    
    MyFile.Close
    %>

  2. #2

  3. #3
    butta tutto e usa l'upload di baol

  4. #4
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314
    Originariamente inviato da HammerFist
    guarda qua

    http://forum.html.it/forum/showthrea...ghlight=upload
    Volevo utilizzare proprio quel tipo di upload...ma oltre a far vedere il file caricato volevo far vedere due righe di testo...

  5. #5
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314
    Ho trovato un esempio di upload che funziona ma mi da solo la possibilità di caricare il file senza testo..inoltre come faccio a far leggere il file caricato nella cartella public?

  6. #6
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    in ke senso senza testo?
    una volta che il file viene caricato(specifichi nel codice dove, nel tuo caso la cartella public) salvi nel db il nome del file, naturalmente nel form farai in modo di caricare anche , chessò, il titolo e la descrizione, questi andranno poi inseriti nel db... quindi nel db avrai una tabella che chiamarai "documenti" o come vuoi tu, con i campi:
    id,titolo,descrizione,nome_file

    successivamente crea una pagina html/asp che non farà altro che stampare a video tutti i record contenuti nella tabella es:

    i miei documenti
    ----------------
    titolo --- doc1
    descrizione: --- descrizione
    file --- <% =nome_file %>

    spero di aver risposto alla tua domanda

  7. #7
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314
    Cercherò di spiegarmi meglio...
    Io ho una pagina htm dove c'è il form.
    Nella pagine inseriscirecord.asp c'è il codice per salvare sul db, ma al momento salvo solo il titolo,articolo,upfile.
    Il mio problema è dove devo mettere il codice per fare l'upload?
    Lo script l'ho preso da http://forum.html.it/forum/showthread.....highlight=upload
    Ma dove lo devo inserire?

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.