Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alexandre Di Salvo

Enviar arquivo junto com form

Recommended Posts

Olá a todos.

 

Venho há algum tempo buscando e estudando uns códigos de envio de arquivos(upload em asp). Porém eu só consigo enviar primeiro o arquivo e depois as informações recolhidas do form ao banco. Será que existe algum jeito de enviar tudo de vez clicando somente em um submit?

 

Segue o código do upload que estou usando com sucesso:

 

<%@ Language=VBScript %>
<%
Dim Contador, Tamanho
Dim ConteudoBinario, ConteudoTexto
Dim Delimitador, Posicao1, Posicao2
Dim ArquivoNome, ArquivoConteudo, PastaDestino
Dim objFSO, objArquivo

PastaDestino = Server.MapPath("/curriculo")

'Determina o tamanho do conteúdo
Tamanho = Request.TotalBytes

'Obtém o conteúdo no formato binário
ConteudoBinario = Request.BinaryRead(Tamanho)

'Transforma o conteúdo binário em string
For Contador = 1 To Tamanho
  ConteudoTexto = ConteudoTexto & Chr(AscB(MidB(ConteudoBinario, Contador, 1)))
Next 

'Determina o delimitador de campos
Delimitador = Left(ConteudoTexto, InStr(ConteudoTexto, vbCrLf) - 1)

'Percorre a String procurando os campos
'identifica os arquivo e grava no disco
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

Posicao1 = InStr(ConteudoTexto, Delimitador) + Len(Delimitar)

do while True
  ArquivoNome = ""
  Posicao1 = InStr(Posicao1, ConteudoTexto, "filename=")
  if Posicao1 = 0 then
    exit do
  else
   'Determina o nome do arquivo
   Posicao1 = Posicao1 + 10
   Posicao2 = InStr(Posicao1, ConteudoTexto, """")
   For contador = (Posicao2 - 1) to Posicao1 step -1
    if Mid(ConteudoTexto, Contador, 1) <> "\" then '"
      ArquivoNome = Mid(ConteudoTexto, Contador, 1) & ArquivoNome
    else
      exit for
    end if
   next
    
   'Determina o conteúdo do arquivo
   Posicao1 = InStr(Posicao1, ConteudoTexto, vbCrLf & vbCrLf) + 4
   Posicao2 = InStr(Posicao1, ConteudoTexto, Delimitador) - 2
   ArquivoConteudo = Mid(ConteudoTexto, Posicao1, (Posicao2 - Posicao1 + 1))
        
   'Grava o arquivo
   if ArquivoNome <> "" then
     Set objArquivo = objFSO.CreateTextFile(PastaDestino & "\" & ArquivoNome, true)
     objArquivo.WriteLine ArquivoConteudo
     objArquivo.Close
            
     'Response.write "Arquivo " & PastaDestino & "\" & _
     'ArquivoNome & " <script>alert('Enviado com sucesso!');</script>"
         'Response.write("<script>alert('Enviado com sucesso!');</script>")
     Set objArquivo = nothing
   end if
end if
Loop
Set objFSO = nothing
%>

E esse meu form:

 

<form action="up.asp" method="post" enctype="multipart/form-data">
E-mail: <input type="text" name="txtEmail"><br>
Arquivo 1: <input type="file" name="txtArquivo1"><br>
Arquivo 2: <input type="file" name="txtArquivo2"><br>
<input type="submit" name="cmdEnviar" value="Enviar">
</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim é possível, no caso você tem que unir os codes de upload e inserção do banco de dados, a primeira coisa que você tem que fazer é o upload, para verificar se o tamanho e extenção é permitido, depois disso se for permitido você prossegue fazendo o upload do arquivo para a pasta e depois disso você monta a função para inserir no banco de dados esta é mais ou menos a lógica.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim é possível, no caso você tem que unir os codes de upload e inserção do banco de dados, a primeira coisa que você tem que fazer é o upload, para verificar se o tamanho e extenção é permitido, depois disso se for permitido você prossegue fazendo o upload do arquivo para a pasta e depois disso você monta a função para inserir no banco de dados esta é mais ou menos a lógica.

 

Como por exemplo? Poderia demonstrar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá uma procurada no laboratorio de script k existe um exemplo, onde você pode selecionar mais de um arquivo para fazer upload...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.