Ir para conteúdo

POWERED BY:

Arquivado

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

lendadomato

[Resolvido] Acentuação com Dundas

Recommended Posts

Tem um form q a apresentação dos dados no email ficou show de bola, mas

tem sempre um detalhe, corpo do html está vindo redondinho

usando <META content='text/html; charset=iso-8859-1' http-equiv=Content-Type>

 

o problema é o assunto do email, ele vem sem acentuação

 

no form já está configurado para receber o valor de "Orçamento" e dessa forma

no assunto do email fica: "Orgamento" e se tiver caracteres especiais a coisa fica preta.

Bom, o q tenho é isso:

 

 

objEmail.Subject = "Orçamento!"

 

 

espero ter sido claro, preciso de uma ajudinha pra resolver isso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta usar assim:

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"
Response.Charset="ISO-8859-1" %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo xanburzum,

 

não consegui fazer como você falou, não sei se fiz errado,era

para substituir o <META content='text/html; charset=iso-8859-1' http-equiv=Content-Type>

pelo o q você passou? e como eu faço para colocar esse scrit q você mandou? onde?

a parte do corpo do email está certinha, só o Assunto

q não tem aventuação.

 

 

 

corpo = "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>"
corpo = corpo & "<HTML><HEAD>"
corpo = corpo & "<META content='text/html; charset=iso-8859-1' http-equiv=Content-Type>"
corpo = corpo & "<META content='MSHTML 5.00.2614.3500' name=GENERATOR></HEAD>"
corpo = corpo & "<BODY>"

 

Dundas

 

objEmail.Subject = "Orçamento!" 'aqui vai o assunto
objEmail.SMTPRelayServers.Add "host"
objEmail.FromName = objUpload.form("nome")
objEmail.CCs.Add objUpload.form("email")
objEmail.HTMLBody = strMensagem

o estranho é q o ponto de exclamação vem certo mas o cedília não.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cocloca ele em cima do seu code, lá na parte de cima...

Compartilhar este post


Link para o post
Compartilhar em outros sites

retornou esse erro:

 

 

Active Server Pages error 'ASP 0140'

 

Page Command Out Of Order

 

The @ command must be the first command within the Active Server Page.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%Response.Charset="ISO-8859-1" %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

continua o mesmo erro xanburzum.

 

vou postar aqui o mesmo font completo porém mais simples:

 

<%
Dim objUpload 'stores upload control instance
Dim objEmail 'stores mailer control instance
Dim strPath 'stores path of the asp page
Dim Index 'counter variable


On Error Resume Next

Set objUpload = Server.CreateObject("Dundas.Upload") 'Upload object
Set objEmail = Server.CreateObject("Dundas.Mailer") 'Mailer object

strPath = Server.MapPath(".") & "\arquivos_form_orcamento\"
objUpload.DirectoryCreate strPath

objUpload.Save strPath

objEmail.TOs.Add "email"

objEmail.Subject = "Orçamento com anexo ação" 'assunto

objEmail.SMTPRelayServers.Add "host"

objEmail.Body = "acentuação deu certo,deu certo se tiver acento no assunto!"


For Each Item in objUpload.Files
objEmail.Attachments.Add Item.Path,Item.OriginalPath
Next

objEmail.SendMail

If Err.Number <> 0 Then 

Response.Write "Ocorreu o seguinte erro: " & Err.Description
Else

Response.Write "O e-mail foi enviado com sucesso para o servidor especificado ."
End If

Set objEmail = Nothing 'release resources
Set objUpload = Nothing
%>

reparei uma coisa, se não add nenhum anexo e enviar, o assunto

vem acentuado, mas quando anexa algum arquivo a acentuação falha.

 

criei um campo hidden com o name="assunto" no formulario, com o value="Orçamento!"

 

mas não resolveu:

 

strAssunto = objUpload.form("assunto")

objEmail.Subject = ""&strAssunto&"" 

ainda recebo sem acentos.

 

usando até:

 


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset="ISO-8859-1" %>

no início.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele eta gerando algum numero e erro ????

Compartilhar este post


Link para o post
Compartilhar em outros sites

nenhum erro, só não acentua, eu encontrei algumas coisas na Net

falando sobre o assunto citado aqui, e encontrei várias soluções porém,

usadas em Asp.Net, infelizemente no meu caso não funcionou:

 

objEmail.SubjectEncoding = System.Text.Encoding.GetEncoding("ISO-8859-1")

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz uma combinação de config.

 

com

 

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset="ISO-8859-1" %>

e

<META content='text/html; charset=iso-8859-1' http-equiv=Content-Type>

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei no config e dá aquele mesmo arro:

 

Active Server Pages error 'ASP 0140'

 

Page Command Out Of Order

 

The @ command must be the first command within the Active Server Page.

 

 

removi a preimeira linha e a página abriu porém não resolveu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque o <%Response.Charset = "ISO-8859-1" %>, no inicio do code

Compartilhar este post


Link para o post
Compartilhar em outros sites

negativo.

vou postar aqui o fonte do fomrulario e o fonte do envio.

 

 

formulariodundas.html

 

<html>
<head><titulo>Formulário</titulo></head>
<body>
Preencha os campos solicitados:
<br><br>
<form method="post" action="dundasmail.asp">
Nome:<br><input type="text" name="nome"><br>
Email:<br><input type="text" name="email"><br>
Assunto:<br><input type="text" name="assunto"><br>
Mensagem:<br><textarea name="mensagem" cols="30" rows="5"></textarea><br><br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

 

 

dundasmail.asp

 

<%
'PARA QUE SEU SCRIPT FUNCIONE É NECESSARIO SOMENTE INSERIR SEU E-MAIL E SMTP NAS LINHAS 3 E 4
mailsend = "seu email"  

'COLOQUE AQUI O E-MAIL QUE VAI RECEBER A MENSAGEM.
seusmtp = "mail.seudominio.com.br"   'COLOQUE AQUI O SMTP DE SEU DOMÍNIO.

'PRONTO ASSIM SEU SCRIPT ENVIARÁ OS DADOS INFORMADOS NO FORMULÁRIO
Dim objEmail     
'Controle de Email


'Muitos métodos do controle lançam uma exception, entao vamos utilizar On Error
On Error Resume Next

Set objEmail = Server.CreateObject("Dundas.Mailer")     
'Objeto de Email

'Vamos capturar os dados passados pelo formulário
Nome = Request("nome")
Email = Request("email")
Assunto = Request("assunto")
Mensagem = Request("mensagem")


'endereço de quem vai receber o e-mail(nao altere pois o e-mail foi informado na linha 3)
objEmail.TOs.Add mailsend







'Assunto da Mensagem
objEmail.Subject = Assunto


'Endereço de quem está ENVIANDO o Email(nao altere pois o e-mail vem do formulário.)
objEmail.FromAddress = Email


'Endereço de SMTP do servidor(nao altere pois já informou o mesmo na linha 4)
objEmail.SMTPRelayServers.Add seusmtp

'Seta a propriedade Body. Mensagem do Email
objEmail.Body = Mensagem

'Envia o Email
objEmail.SendMail

'Testa por sucesso ou falha no envio
If Err.Number <> 0 Then
'Ocorreu um erro, então mostramos a descrição
    Response.Write "Desculpe, ocorreu o seguinte erro: " & Err.Description
Else
'Sucesso! no envfio do e-mail 
    Response.Write "O Email foi enviado com sucesso!"
End If

'Tira o objeto da memória
Set objEmail = Nothing
%>

 

se alguém conseguir resolver nesse fonte já me ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

colocando o

 

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset="ISO-8859-1" %>

e

<META content='text/html; charset=iso-8859-1' http-equiv=Content-Type>
qual o resultado ???/

Compartilhar este post


Link para o post
Compartilhar em outros sites

não dá erro nenhum, mas tbm não funciona, como eu disse, o corpo

do email está tudo certo.

 

 

 

 

 

colocando o

 

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset="ISO-8859-1" %>

e

<META content='text/html; charset=iso-8859-1' http-equiv=Content-Type>
qual o resultado ???/

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

você esta executando no server ou localhost ????

 

dá um response.write na variavel asunto para ver o que esta sendo pasado ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, dei um response.write no assunto e a coisa ficou mais preta ainda, veja

o resultado= orçamento mas não sei o se deu q deu certo, no assunto está correto.

 

cara, dei um response.write no assunto e a coisa ficou mais preta ainda, veja

o resultado= orçamento mas não sei o q aconteceu, só sei q deu certo, no assunto está correto.

 

Resolvido, obrigado xanburzum!

Compartilhar este post


Link para o post
Compartilhar em outros sites

caro amigo, depois de 2 dias de luta achei o problema, o

meu site está hospedado em um servidor estrangeiro, quando preencho o campo

email com email alternativo aqui do Brasil ele chega blza, mas

só pra mim q vem errado o assunto, aí com tudo isso notei q

algo estava errado no meu servidor, o smtp.

 

vou ver com o suporte o q podemos fazer.

valeu mesmo pela força, ajudou muito!

 

 

 

RESOLVIDO!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

é melhor, entre em contato com o host e veja as config. como estão setadas, também

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.