Ir para conteúdo
Fórum Script Brasil

Luka

Membros
  • Total de itens

    6
  • Registro em

  • Última visita

Tudo que Luka postou

  1. Luka

    Pegar parâmetro do upload

    Bom, consegui. Fiz assim: <FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="cadastro.asp"> <INPUT TYPE=FILE SIZE=100 NAME="ARQUIVO1"><BR> <INPUT TYPE=SUBMIT VALUE="Fazer Upload"> E depois assim: <input type="input" name="CHAMADA" id="CHAMADA" value="<% For Each File in Upload.Files Response.Write Right(File.Path,Len(File.Path)-InstrRev(File.Path,"\")) Next %>" /> Agora o problema está em editar esse cadastro. Estou usando isso em um sistema de notícias. Quando vou editar, ou seja, fazer upload de uma nova imagem, o formulário acaba exibindo sempre a 1ª notícia da lista e também não faz upload. Não sei o que fazer.
  2. Tenho uma página que faz upload de 1 arquivo usando ASP. Gostaria de saber se é possível exibir o nome desse arquivo depois do upload e se esse nome pode vir em algum textfield de um form.
  3. Alguém sabe como listar itens (de uma pasta ou de um banco de dados) em um componente <select> de um formulário HTML ?
  4. Olá! Semana passada eu criei um tópico sobre renomear arquivo ao fazer upload. Acabei conseguindo graças a ajuda de alguns. PosBeg = PosFile + 10 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) filename = hour(time) & minute(time) & day(date) & month(date) & year(date) & filename Mas agora eu reparei que no Internet Explorer não funciona a renomeação (+ hora e data). O arquivo vai com o nome original. Testei no Opera, no Safari e no Firefox e funciona. Existe algum cuidado em programar ASP que eu deva tomar, para que seja aceito por todos os browsers? :unsure:
  5. Eu consegui resolver (com ajuda) o problema de renomear arquivo no sistema de upload que uso. Veja os códigos: formulario.html <HTML> <HEAD> <TITLE>Formulário de Upload</TITLE> </HEAD> <BODY> <div align="center"><B>Envie sua foto!</b> </div> <FORM METHOD="Post" ENCTYPE="multipart/form-data" ACTION="outputFile.asp"> <div align="center">Arquivo: <INPUT TYPE="file" NAME="blob"> <BR> <INPUT NAME="Enter" TYPE="submit" value="Enviar"> </div> </FORM> </BODY> </HTML> upload.asp <% Sub BuildUploadRequest(RequestBin) 'Get the boundary PosBeg = 1 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg) boundaryPos = InstrB(1,RequestBin,boundary) 'Get all data inside the boundaries Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--"))) 'Members variable of objects are put in a dictionary object Dim UploadControl Set UploadControl = CreateObject("Scripting.Dictionary") 'Get an object name Pos = InstrB(BoundaryPos,RequestBin,getByteString("Content-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("filename=")) PosBound = InstrB(PosEnd,RequestBin,boundary) 'Test if object is of file type If PosFile<>0 AND (PosFile<PosBound) Then 'Get Filename, content-type and content of file PosBeg = PosFile + 10 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) filename = hour(time) & minute(time) & day(date) & month(date) & year(date) & filename 'Add filename to dictionary object UploadControl.Add "FileName", FileName Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:")) PosBeg = Pos+14 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) 'Add content-type to dictionary object ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) UploadControl.Add "ContentType",ContentType 'Get content of object PosBeg = PosEnd+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg) Else 'Get content of object 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 'Add content to dictionary object UploadControl.Add "Value" , Value 'Add dictionary object to main dictionary UploadRequest.Add name, UploadControl 'Loop to next object BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary) Loop End Sub 'String to byte string conversion Function getByteString(StringStr) For i = 1 to Len(StringStr) char = Mid(StringStr,i,1) getByteString = getByteString & chrB(AscB(char)) Next End Function 'Byte string to string conversion Function getString(StringBin) getString ="" For intCount = 1 to LenB(StringBin) getString = getString & chr(AscB(MidB(StringBin,intCount,1))) Next End Function %> outputfile.asp <% Response.Expires=0 Response.Buffer = TRUE Response.Clear 'Response.BinaryWrite(Request.BinaryRead(Request.TotalBytes)) byteCount = Request.TotalBytes 'Response.BinaryWrite(Request.BinaryRead(varByteCount)) RequestBin = Request.BinaryRead(byteCount) Dim UploadRequest Set UploadRequest = CreateObject("Scripting.Dictionary") BuildUploadRequest RequestBin contentType = UploadRequest.Item("blob").Item("ContentType") filepathname = UploadRequest.Item("blob").Item("FileName") filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\")) value = UploadRequest.Item("blob").Item("Value") 'Create FileSytemObject Component Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject") 'Create and Write to a File pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14 Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)&filename) For i = 1 to LenB(value) MyFile.Write chr(AscB(MidB(value,i,1))) Next MyFile.Close %> <p align="center"><b>Uploaded file : </b><%=filename%><BR> <img src="<%=filename%>"> <!--#include file="upload.asp"--> </p> O que foi inserido no upload.asp, pra funcionar: filename = hour(time) & minute(time) & day(date) & month(date) & year(date) & filename
  6. Tenho essa dúvida também! Uso um codigo sem componente onde uma página faz o upload e depois exibe uma outra página com o nome do arquivo e a visualização dele. Mas se eu mandar outro arquivo com o mesmo nome, ele substitui. Quero saber como evitar isso... seja renomeando automaticamente ou exibindo algum alerta. :unsure:
×
×
  • Criar Novo...