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

Como Enviar Um Email Com Codigo Html ?


Felipeee

Pergunta

Amigos,

huh.gif

Como enviar um email com codigo html e ao receber o email ver os links e imagens?

Quando acesso o email recebido vejo exatamente o codigo html, ou seja, o script.

Quero ver os links e imagens que coloquei!

E ainda como enviar o email utilizando o dns?

Aguardo qualquer ajuda.

Felipeee.

Link para o comentário
Compartilhar em outros sites

18 respostass a esta questão

Posts Recomendados

  • 0

Para que alguém possa te ajudar, existem varias maneiras de enviar um email com delphi (inclusive componentes diferentes)

De que maneira voce está adicionando o texto ao email?

Acho que seu problema é o seguinte: para enviar emails com HTML, a mensagem tem que estar em formato MIME(tente setar a mensagem como MIME, não sei se voce esta armazenando ela num componente antes de mandar... Eu estou acostumado a trabalhar com Indy, que possue o Componente TIdMessage para essa finalidade...), me parece que voce esta mandando somente como texto....

Quanto mais voce especificar a sua duvida, mais facil das pessoas te ajudarem wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Codigo:

NMPOP31.AttachFilePath := '.';

NMPOP31.DeleteOnRead := FALSE;

NMPOP31.ReportLevel := Status_Basic;

NMPOP31.TimeOut := 20000;

NMPOP31.Host := 'pop.server.com.br';

NMPOP31.Port := 110;

NMPOP31.UserID := 'login';

NMPOP31.Password := 'senha';

NMPOP31.Connect;

if not NMPOP31.Connected then exit else NMPOP31.Disconnect;

NMSMTP1.ClearParams := TRUE;

NMSMTP1.Host := 'smtp.server.com.br';

NMSMTP1.Port := 25;

NMSMTP1.UserID := 'loginhost';

NMSMTP1.Connect;

//Conexão não feita ele sai

//Conexão feita ele prossegue

If not NMSMTP1.Connected then exit;

NMSMTP1.PostMessage.Body.Clear;

NMSMTP1.PostMessage.ToAddress.Clear;

NMSMTP1.PostMessage.FromAddress := 'emaildefulano@uo.com.br';

NMSMTP1.PostMessage.FromName := 'nomefulano';

NMSMTP1.PostMessage.Body.Add(mens.text);

NMSMTP1.PostMessage.Subject := (assunto.text);

NMSMTP1.PostMessage.ToAddress.Add('emailparasicrano@uu.com.br');

NMSMTP1.SendMail;

o subtype do nmsmtp1 está mtHtml.

p encodetype do nmsmpt1 está uuMime.

o que está de errado??!!

Caramba!!

Link para o comentário
Compartilhar em outros sites

  • 0

veja se isso pode te ajudar...

Enviar um email

smtp.postmessage.toAddress := 'StringList (por ex uma listbox';

smtp.postmessage.FromAdreess := 'ex: meu_email@123.pt';

smtp.userid := 'ex: user@123.pt'

smtp.host := 'ex: smtp@123.pt'

smtp.postmessage.subject := 'Assunto'

smtp.postmessage.body := 'Texto da mensagem (stringlist)'

smtp.connect;

smtp.sendmail;

smtp.disconnect;

Contribuição:

O Anonymous.nick enviou um complemento explicando melhor o procedimento para enviar um e-mail usando o Delphi.

Fazer um aplicativo completo para manipulação de e-mails é um tanto trabalhoso e não é o assunto desta dica. Muitas vezes, porém, queremos apenas dar ao nosso software a capacidade de enviar simples e-mails. Isto é fácil, especialmente porque o Delphi5 nos oferece o componente TNMSMTP (paleta FastNet) que faz praticamente todo o trabalho para nós. Precisamos apenas alterar algumas propriedades e chamar alguns métodos para que a mensagem seja enviada. Vamos para a prática:

1. Coloque um componente TNMSMTP no form.

2. Coloque um botão e no evento OnClick deste botão escreva:

procedure TForm1.Button1Click(Sender: TObject);

begin

{ Seu servidor SMTP }

NMSMTP1.Host := 'smtp.servidor.com.br';

{ Porta SMTP, **NÃO MUDE ISTO** }

NMSMTP1.Port := 25;

{ Nome de login do usuário }

NMSMTP1.UserID := 'MeuLogin';

{ Conecta ao servidor }

NMSMTP1.Connect;

{ Se ocorrer algum erro durante a conexão com o servidor, avise! }

if not NMSMTP1.Connected then

raise Exception.Create('Erro de conexão');

with NMSMTP1.PostMessage do begin

{ Seu e-mail }

FromAddress := 'meuemail@meuserver.com.br';

{ Seu nome }

FromName := 'Meu Nome';

{ E-mail do destinatário }

ToAddress.Clear;

ToAddress.Add('destinatario@servidor.com.br');

{ Assunto da mensagem }

Subject := 'Assunto da mensagem';

{ Corpo da mensagem }

Body.Clear;

Body.Add('Primeira linha da mensagem');

Body.Add('Segunda linha da mensagem');

Body.Add(''); { Linha em branco }

Body.Add('Última linha da mensagem');

{ Anexar arquivos(Se não quiser anexar arquivos, apague as 3 linhas seguintes) }

Attachments.Clear;

{ Endereço do anexo }

Attachments.Add('c:\diretorio\arquivo.ext');

end;

{ Manda o e-mail }

NMSMTP1.SendMail;

{ Disconecta do servidor }

NMSMTP1.Disconnect;

end;

Pronto! É só fazer as adaptações necessárias e você terá envio de e-mails em sua aplicação.

Observações:

Para enviar o mesmo e-mail para vários destinatário de uma só vez basta adicionar os endereços de e-mails de todos os destinatários em NMSMTP1.PostMessage.ToAddress.

DELPHI-Man32...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Felipeee -

Cara obrigado!

Utilizo o delphi 4.

Enviar um texto, tá beleza! É só acrescentar as linhas.

Mas coloca no body da mensagem um <href=....> por exemplo.

Coloca um <img ...>.

Veja o e-mail recebido e observe se os links ou as mensagens aparecem.

Resposta: não! Aparece o script!

É essa a minha duvida!

Como enviar um e-mail desta forma?!

Isso é o que tá pegando!!

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Felipee -

Obrigado!

Mas observe que o que você sugeriu é exatamente o que está acima(nos comandos que coloquei)!

Mesmo assim obrigado!

Se poder me ajudar na divuda anterior, ficarei imensamente agradecido.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Felipeee -

Caro amigo,

Dá uma olhada no codigo acima. Veja se a alteracao que você sugere é a que fiz.

"o subtype do nmsmtp1 está mtHtml.

p encodetype do nmsmpt1 está uuMime.

"

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Patodeborracha

Pra usar html você precisa definir o content-type como multipart-alternative

definir uma parte como text/html e depois fechar

------=_NextPart_000_0010_01C44D73.C000EB40

Content-Type: text/html;

charset="iso-8859-1"

Content-Transfer-Encoding: quoted-printable

<HTML><HEAD>

<META http-equiv=3DContent-Type content=3D"text/html; =

charset=3Diso-8859-1">

<META content=3D"MSHTML 6.00.2800.1400" name=3DGENERATOR>

<STYLE></STYLE>

</HEAD>

<BODY bgColor=3D#c0c0c0>

<DIV><FONT face=3DArial size=3D2>asdas</FONT></DIV>

<DIV><FONT face=3DArial size=3D2>asdas</FONT></DIV>

<DIV><FONT face=3DArial size=3D2>asdas</FONT></DIV>

<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_000_0010_01C44D73.C000EB40--

deu pra sacar?

é no corpo do email que você deve mecher

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Felipeee -

Caro patodeborracha,

Sem sucesso...

Estou utilizando um richedit para armazenar a mensagem.

Será que é isso?

Como disse utilizo delphi 4 e os componentes acima.

não encontrei no delphi 4 o componente para exibir o conteudo html.

Agradeco e aguardo.

Felipeee.

Link para o comentário
Compartilhar em outros sites

  • 0
Para que alguém possa te ajudar, existem varias maneiras de enviar um email com delphi (inclusive componentes diferentes)

De que maneira voce está adicionando o texto ao email?

Acho que seu problema é o seguinte: para enviar emails com HTML, a mensagem tem que estar em formato MIME(tente setar a mensagem como MIME, não sei se voce esta armazenando ela num componente antes de mandar... Eu estou acostumado a trabalhar com Indy, que possue o Componente TIdMessage para essa finalidade...), me parece que voce esta mandando somente como texto....

Quanto mais voce especificar a sua duvida, mais facil das pessoas te ajudarem ;)

Uso o delphi 5 e tenho um relatório de produtos que preciso mandar por e-mail, tanto em anexo ou como no corpo no e-mail, alguém sabe como posso fazer isto?

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Felipeee -

Caro amigo,

Creio que você não leu os post anteriores.

já haviam sugerido isto e já havia postado o resultado. Sem sucesso....

Qualquer outra observacao, dê uma anteriormente ok?!

Obrigado mesmo assim.

Felipeeee.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest if(e.getStateChanged() {

-----------

EDITADO

-----------

Sei como é esse negocio de direito de livre expressão... mas vamos evitar esse tipo de comentario...

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
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...