Ir para conteúdo
Fórum Script Brasil
  • 0

Problema com multipart/form-data


dcoder

Pergunta

Boa tarde pessoal,

Pesquisando no forum e também no google achei várias pessoas com esse problema, porém as soluções apresentadas não foram de total valia.

O problema é com o multipart/form-data do formulário, ao retirar o mesmo os dados são enviados só que sem o anexo pois sem o multipart/form-data no form o anexo não é enviado mesmo.

Ao colocar o multipart/form-data o formulário é enviado só que sem nenhum dado.

Segue o meu codigo:

<%

Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.SetMaxSize 50000, True
On Error Resume Next
Upload.Save "c:/Inetpub/vhosts/dominio.com.br/httpdocs/teste/"


If Err.Number = 8 Then
  Response.Write "Arquivo muito grande!"
Else
  If Err <> 0 Then
         Response.Write "Aconteceu um erro: " & Err.Description
  Else


For Each File in Upload.Files
If File.ImageType = "UNKNOWN" Then
         Response.Write "Isso não é uma imagem."
         File.Delete
         Response.End
else
 End If


caminho =  Objeto.AddAttachment(Server.MapPath("c:/Inetpub/vhosts/dominio.com.br/httpdocs/teste/"))


foto = "<img src="& caminho &">"
next      
nome = request.form("nome")
email = request.form("email")

corpo = "Foto:" &foto&"<br><br>Nome: "&nome&"<br><br>Email: "&email

Set objmail = Server.CreateObject("Persits.MailSender")
objmail.Host = "mail.perfectcom.com.br"
objmail.From = email
objmail.FromName = "EMAIL RECEBIDO PELO SITE"
objmail.AddAddress "dominio@dominio.com.br"


objmail.Subject = "EMAIL RECEBIDO PELO SITE"
objmail.IsHTML = True
objmail.Body = corpo
objmail.Send
Set objmail = nothing


end if
end if
%>

O upload funciona normalmente enviando o arquivo para o server. O problema é só com o multipart/form-data.

Fico no aguardo para alguma solução pessoal. Obrigado aew.

Editado por dcoder
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Boa tarde pessoal,

Pesquisando no forum e também no google achei várias pessoas com esse problema, porém as soluções apresentadas não foram de total valia.

O problema é com o multipart/form-data do formulário, ao retirar o mesmo os dados são enviados só que sem o anexo pois sem o multipart/form-data no form o anexo não é enviado mesmo.

Ao colocar o multipart/form-data o formulário é enviado só que sem nenhum dado.

Segue o meu codigo:

<%

Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.SetMaxSize 50000, True
On Error Resume Next
Upload.Save "c:/Inetpub/vhosts/dominio.com.br/httpdocs/teste/"


If Err.Number = 8 Then
  Response.Write "Arquivo muito grande!"
Else
  If Err <> 0 Then
         Response.Write "Aconteceu um erro: " & Err.Description
  Else


For Each File in Upload.Files
If File.ImageType = "UNKNOWN" Then
         Response.Write "Isso não é uma imagem."
         File.Delete
         Response.End
else
 End If


caminho =  Objeto.AddAttachment(Server.MapPath("c:/Inetpub/vhosts/dominio.com.br/httpdocs/teste/"))


foto = "<img src="& caminho &">"
next      
nome = request.form("nome")
email = request.form("email")

corpo = "Foto:" &foto&"<br><br>Nome: "&nome&"<br><br>Email: "&email

Set objmail = Server.CreateObject("Persits.MailSender")
objmail.Host = "mail.perfectcom.com.br"
objmail.From = email
objmail.FromName = "EMAIL RECEBIDO PELO SITE"
objmail.AddAddress "dominio@dominio.com.br"


objmail.Subject = "EMAIL RECEBIDO PELO SITE"
objmail.IsHTML = True
objmail.Body = corpo
objmail.Send
Set objmail = nothing


end if
end if
%>
O upload funciona normalmente enviando o arquivo para o server. O problema é só com o multipart/form-data. Fico no aguardo para alguma solução pessoal. Obrigado aew.
Consegui enviar utilizando upload.form ao invés de request.form, porém o anexo não chega somente os outros dados.
<%

Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.SetMaxSize 50000, True
On Error Resume Next
Upload.Save "c:/Inetpub/vhosts/perfectcom.com.br/httpdocs/teste/"




If Err.Number = 8 Then
  Response.Write "Arquivo muito grande!"
Else
  If Err <> 0 Then
         Response.Write "Aconteceu um erro: " & Err.Description
  Else


For Each File in Upload.Files
If File.ImageType = "UNKNOWN" Then
         Response.Write "Isso não é uma imagem."
         File.Delete
         Response.End
else
 End If




'caminho =  objmail.AddAttachment(Server.MapPath("c:/Inetpub/vhosts/perfectcom.com.br/httpdocs/teste/"))


foto = "<img src="& caminho &">"
next      
nome = upload.form("nome")
email = upload.form("email")

corpo = "Foto: "&foto&"<br><br>Nome: "&nome&"<br><br>Email: "&email

Set objmail = Server.CreateObject("Persits.MailSender")
objmail.Host = "mail.perfectcom.com.br"
objmail.From = email
objmail.FromName = "EMAIL RECEBIDO PELO SITE"
objmail.AddAddress "perfectcom@perfectcom.com.br"



objmail.Subject = "EMAIL RECEBIDO PELO SITE"
objmail.IsHTML = True
objmail.Body = corpo
objmail.Send
Set objmail = nothing

end if
end if
%>

Como faço para enviar o anexo agora ?

Editado por dcoder
Link para o comentário
Compartilhar em outros sites

  • 0

você não adicionou anexo algum para ser enviado...

objmail.AddAttachment(Server.MapPath("arquivo.ext"))
detalhe não há como adicionar o anexo se o objetomail não foi criado !!!
Set objmail = Server.CreateObject("Persits.MailSender")
objmail.AddAttachment(Server.MapPath("arquivo.ext"))

no caso de vários arquivos use Array...

Link para o comentário
Compartilhar em outros sites

  • 0

entendi,

mas eu não quero adicionar um arquivo especifico como fez acima, vai ser realizado um upload e o mesmo terá que ser resgatado pelo script...

Se eu fizer da maneira que mencionou não estaria apenas enviando aquele determinado arquivo ?

Obrigado.

Tentei e olha o erro :

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator to inform of the time the error occurred and of anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Permissão eu já dei no diretório.. Não sei oque pode ser...

Editado por dcoder
Link para o comentário
Compartilhar em outros sites

  • 0

uai é so olhar o pensar né...

um arquivo:

objmail.AddAttachment(Server.MapPath("arquivo.ext"))

dois arquivos:

objmail.AddAttachment(Server.MapPath("arquivo.ext"))

objmail.AddAttachment(Server.MapPath("arquivo.ext"))

ou

objmail.AddAttachment(Server.MapPath("arquivo.ext");Server.MapPath("arquivo.ext")) --> depende do componente

libere os erros do seu navegador:

ferramentas / opções / avançado / desmarque mensagens de erro http amigavéis

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...