TiagoL 0 Denunciar post Postado Maio 28, 2009 Olá a todos. Estou a usar o seguinte (link aqui) código para o meu site, mas gostava que no email de confirmação que é enviado ao consumidor tivesse formatação HTML, de modo a enviar imagens, por exemplo. É possível fazer. Se sim como? Presumo que seja nesta parte, mas com as tags normais o script PHP envia os códigos em formato texto. $mensagem = "<h3>De:</h3> "; $mensagem .= $recebenome . $recebemail; $mensagem .= "<h3>Assunto:</h3>"; $mensagem .= "Mensagem do Site"; $mensagem .= "<h3>Mensagem</h3>"; $mensagem .= "<p>"; $mensagem .= $recebemsg; $mensagem .= "</p>"; Desde já obrigado pela ajuda. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
José Enésio 4 Denunciar post Postado Maio 28, 2009 Você precisa definir um header para a função mail, content-type: text/html se não me engano, aí o email será enviado como HTML. Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 28, 2009 Obrigado pela resposta. O código do site já tem essa header, mas mesmo assim não funciona. Existe outra forma? $headers = "Content-type:text/html; charset=iso-8859-1"; Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 28, 2009 Não funciona como? Da erro? O que acontece? Ta tentando enviar a imagem como? Em anexo ou no corpo da mensagem? Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 29, 2009 O que eu queria saber em concreto é se existe algum código $post para imagens, de modo a adicionar o url do logo da minha empresa no cimo do email, de modo a aparecer como imagem. Obrigado pela ajuda. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 29, 2009 Envia o email com HTML. Aí no corpo da mensagem tu coloca um <img src="....." /> ;) Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 30, 2009 Dá erro de sintaxe quando envia o email na linha onde insiro esse código. http://forum.imasters.com.br/public/style_emoticons/default/pinch.gif Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Maio 30, 2009 Se dá erro de sintaxe é porque tem alguma coisa escrita errada. Posta o código que fica mais fácil. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Marcelo de Andrade 2 Denunciar post Postado Maio 30, 2009 bem... isso é o que eu uso no meu e funciona beleza : $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\n"; Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 30, 2009 Ta e qual erro? Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 30, 2009 Tentei com este código: $mensagem = "<img src="linkdaimagem.jpg" />"; $mensagem .= "<h3>De:</h3> "; $mensagem .= $recebenome . $recebemail; $mensagem .= "<h3>Assunto:</h3>"; $mensagem .= "Mensagem do Site"; $mensagem .= "<h3>Mensagem</h3>"; $mensagem .= "<p>"; $mensagem .= $recebemsg; $mensagem .= "</p>"; Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 30, 2009 Mas qual erro apareceu na tua tela????? Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 31, 2009 Esta: ;) Parse error: syntax error, unexpected T_STRING in /home/a1845277/public_html/enviar_contato.php on line 27 Compartilhar este post Link para o post Compartilhar em outros sites
NWO_Magus 0 Denunciar post Postado Maio 31, 2009 Troque: $mensagem = "<img src="linkdaimagem.jpg" />";Por:$mensagem = "<img src=\"linkdaimagem.jpg\" />"; Faltou atenção ali para escapar a doublequote. ;) Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 31, 2009 Eu ainda sugiro assim, para melhor performance. $mensagem = '<img src="linkdaimagem.jpg" />'; Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 31, 2009 Obrigado aos dois! Já consegui resolver o meu problema usando o método apresentado. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Muito obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 31, 2009 Outro problema... <_< Queria usar o mesmo sistema para o carrinho de compras, só que neste caso o email que o cliente recebe contém o código escrito. Há alguma solução? Desde já obrigado pela ajuda. Não é por acaso que este é um dos melhores fóruns de programação! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <? $headers = "Content-type:text/html; charset=iso-8859-1"; //INICIALIZA A SESSÃO session_start(); //VERIFICA SE FOI ESCOLHIDA A OPÇÃO PARA FECHA O PEDIDO if($_POST[opc_enviar]) { //RECEBE OS DADOS DO FORMULÁRIO $v_nome = "$_POST[txtNome]"; $v_end = $_POST[txtEndereco]; $v_cp = $_POST[txtCP]; $v_L = $_POST[txtL]; $v_pais = $_POST[txtpais]; $v_email = $_POST[txtEmail]; $v_produtos = $_POST[v_produtos]; $v_pagamento = $_POST[pag]; $v_total = number_format($_POST[v_total],2,',','.'); $v_portes = number_format($_POST[v_total],2,',','.') + 3; $v_desconto = $_POST[v_des]; $v_oferecer = $_POST[v_oferecer]; $v_mensagem = $_POST[v_mensagem]; //EMAIL DO ADMINISTRADOR QUE VAI RECEBER O PEDIDO $email_dest = "email"; //EMAIL DO CLIENTE QUE VAI RECEBER O PEDIDO $email_cliente = "$v_email"; $v_email2 = "email"; $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\n"; //PREPARA O PEDIDO $mens = "---------------------------------------------------------------------\n"; $mens = '<img src="linkdaimagem" />'; $mens .= " Detalhes da sua encomenda \n"; $mens .= "---------------------------------------------------------------------\n\n"; $mens .= "Quantidade > Descrição > Valor do produto \n"; $mens .= "---------------------------------------------------------------------\n"; $mens .= "".$v_produtos." \n"; $mens .= "Valor da encomenda: €".$v_total." \n"; $mens .= "Valor da encomenda com portes de envio: €".$v_portes." \n\n"; $mens .= "DADOS PARA ENTREGA: \n"; $mens .= "Nome: ".$v_nome." \n"; $mens .= "Endereço: ".$v_end." \n"; $mens .= "Localidade: ".$v_L." \n"; $mens .= "Código Postal: ".$v_cp." \n"; $mens .= "País: ".$v_pais." \n"; $mens .= "Email: ".$v_email." \n\n\n"; $mens .= "Como efectuar o pagamento: ".$v_pagamento." \n\n\n"; $mens .= "Informações adicionais \n"; $mens .= "Desconto: ".$v_desconto." \n"; $mens .= "Oferta?: ".$v_oferecer." \n"; $mens .= "Mensagem: ".$v_mensagem." \n\n\n\n\n"; $mens .= "--------------------------------------------------------------------- \n"; $mens .= "OBRIGADO PELA PREFERÊNCIA. \n"; $mens .= "Se necessitar de alterar ou cancelar a sua encomenda, faça-o respondendo para este email. "; //DISPARA O EMAIL $envia = mail($email_dest, "A sua encomenda foi recebida", $mens,"From:".$v_email2."\r\nBcc:".$v_email); //VERIFICA SE O EMAIL FOI ENVIADO COM SUCESSO if($envia) { //ELIMINA TODAS AS VARIÁVEIS DA SESSÃO $_SESSION = array(); //DESTRÓI A SESSÃO PARA GARANTIR @session_destroy(); ?> <script language="JavaScript"> <!-- window.location.href = "sucesso.html"; //--> </script> <? }//FECHA IF(envia) else {?> <script language="JavaScript"> <!-- window.location.href = "insucesso.php"; //--> </script> <? }//FECHA ELSE (envia) }//FECHA IF ?> Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 31, 2009 <? //INICIALIZA A SESSÃO session_start(); //VERIFICA SE FOI ESCOLHIDA A OPÇÃO PARA FECHA O PEDIDO if($_POST['opc_enviar']) { //RECEBE OS DADOS DO FORMULÁRIO $v_nome = $_POST['txtNome']; $v_end = $_POST['txtEndereco']; $v_cp = $_POST['txtCP']; $v_L = $_POST['txtL']; $v_pais = $_POST['txtpais']; $v_email = $_POST['txtEmail']; $v_produtos = $_POST['v_produtos']; $v_pagamento = $_POST['pag']; $v_total = number_format($_POST['v_total'],2,',','.'); $v_portes = number_format($_POST['v_total'],2,',','.') + 3; $v_desconto = $_POST['v_des']; $v_oferecer = $_POST['v_oferecer']; $v_mensagem = $_POST['v_mensagem']; //EMAIL DO ADMINISTRADOR QUE VAI RECEBER O PEDIDO $email_dest = 'email'; //EMAIL DO CLIENTE QUE VAI RECEBER O PEDIDO $email_cliente = $v_email; $v_email2 = 'email'; //PREPARA O PEDIDO $mens = "---------------------------------------------------------------------\n"; $mens .= '<img src="linkdaimagem" />'; $mens .= " Detalhes da sua encomenda \n"; $mens .= "---------------------------------------------------------------------\n\n"; $mens .= "Quantidade > Descrição > Valor do produto \n"; $mens .= "---------------------------------------------------------------------\n"; $mens .= "".$v_produtos." \n"; $mens .= "Valor da encomenda: €".$v_total." \n"; $mens .= "Valor da encomenda com portes de envio: €".$v_portes." \n\n"; $mens .= "DADOS PARA ENTREGA: \n"; $mens .= "Nome: ".$v_nome." \n"; $mens .= "Endereço: ".$v_end." \n"; $mens .= "Localidade: ".$v_L." \n"; $mens .= "Código Postal: ".$v_cp." \n"; $mens .= "País: ".$v_pais." \n"; $mens .= "Email: ".$v_email." \n\n\n"; $mens .= "Como efectuar o pagamento: ".$v_pagamento." \n\n\n"; $mens .= "Informações adicionais \n"; $mens .= "Desconto: ".$v_desconto." \n"; $mens .= "Oferta?: ".$v_oferecer." \n"; $mens .= "Mensagem: ".$v_mensagem." \n\n\n\n\n"; $mens .= "--------------------------------------------------------------------- \n"; $mens .= "OBRIGADO PELA PREFERÊNCIA. \n"; $mens .= "Se necessitar de alterar ou cancelar a sua encomenda, faça-o respondendo para este email. "; //DISPARA O EMAIL $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'From: '.$v_nome.' <'.$v_email2.'>' . "\r\n"; $headers .= 'To: Título Mensagem <'.$email_dest.'>' . "\r\n"; $envia = mail($email_dest, "A sua encomenda foi recebida", $mens, $headers); //VERIFICA SE O EMAIL FOI ENVIADO COM SUCESSO if($envia) { //ELIMINA TODAS AS VARIÁVEIS DA SESSÃO $_SESSION = array(); //DESTRÓI A SESSÃO PARA GARANTIR @session_destroy(); ?> <script language="JavaScript"> <!-- window.location.href = "sucesso.html"; //--> </script> <? }//FECHA IF(envia) else {?> <script language="JavaScript"> <!-- window.location.href = "insucesso.php"; //--> </script> <? }//FECHA ELSE (envia) }//FECHA IF ?> Dei uma limpada basica no teu código, tava muito ruim. Tem que fazer algumas coisas ainda, mas o resto é contigo. Verifica se funciona ai. Compartilhar este post Link para o post Compartilhar em outros sites
TiagoL 0 Denunciar post Postado Maio 31, 2009 Obrigado pela disponibilidade em tentar solucionar o meu problema. Agora o código não envia o email... apesar de no site dizer que foi enviado, ele não chega à caixa de correio electrónico. :blink: Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Maio 31, 2009 $envia = mail($email_dest, "A sua encomenda foi recebida", $mens, $headers); Coloquei um espaço a mais antes da variavel $mens. Talvez isso não resolva, mas tenta ai. Compartilhar este post Link para o post Compartilhar em outros sites