Enviando Anexo com a função mail();
enviar anexos com esta função.
vamos ao que interessa:
Boundary é a marcação que o programa de email vai
levar em conta na hora da separação das partes do
email. No corpo do email ele é identificado como ‘–’ mais o boundary!
$boundary = strtotime(’NOW’);
$headers = “From: Eu \n”;
$headers .= “MIME-Version: 1.0\n”;
$headers .= “Content-Type: multipart/mixed; boundary=\”" . $boundary . “\”\n”;
$msg = “–” . $boundary . “\n”;
$msg .= “Content-Type: text/plain; charset=\”iso-8859-1\”\n”;
$msg .= “Content-Transfer-Encoding: quoted-printable\n\n”;
$msg .= “Aqui eu escrevo o texto do email\n”;
$msg .= “–” . $boundary . “\n”;
$msg .= “Content-Transfer-Encoding: base64\n”;
$msg .= “Content-Disposition: attachment; filename=\”imagem.gif\”\n\n”;
/*Esta parte define a imagem em si! Primeiramente eu envio os
identificadores de anexo, com o nome do anexo. Mais
embaixo, eu pego o conteúdo do arquivo ( readfile
(”imagem.gif”); ) e o encripto com o base64 (formato
padrão dos anexos no email!).
É nessa parte que tem que se tomar cuidado, pois pelo
RFC as linhas do email não podem ser muito grandes.
Por isso o FOR “quebra” o conteudo do arquivo em
pedaços de 76 caracteres!*/
ob_start();
readfile(”imagem.gif”);
$enc = ob_get_contents();
ob_end_clean();
$msg_temp = base64_encode($enc). “\n”;
$tmp[1] = strlen($msg_temp);
$tmp[2] = ceil($tmp[1]/76);
for ($b = 0; $b <= $tmp[2]; $b++) {
$tmp[3] = $b * 76;
$msg .= substr($msg_temp, $tmp[3], 76) . “\n”;
}
unset($msg_temp, $tmp, $enc);
mail(”para@email.com.br”, “Assunto”, $msg, $headers);
?>
Qualquer dúvida…
andrey@andrey.eti.br
February 14th, 2007 at 5:01 pm
Andrey,
Boa Noite…desculpe o encomodo..é que estou iniciando no php e estou fazendo um formulário onde tem um campo com a data de nascto e outro com a idade..minha duvida é a seguinte.
1) como posso fazer a função de forma que quando é digitado a data de nascimento…automaticamente a idade aparece.
2) qual a função que coloco no campo idade para buscar a função citada no item 1)
desde já agradeço sua atenção
Obrigado
February 15th, 2007 at 6:34 am
Mauricio,
sua resposta está em:
http://www.andrey.eti.br/?p=152
Att.,
Andrey Pedro Lefkum
February 19th, 2007 at 10:11 am
utilizei o codigo acima e a imagem não aparce no email, aparece só numeros e letras
email que aperece:
–1171868400Content-Type: text/plain; charset=”iso-8859-1″Content-Transfer-Encoding: quoted-printable Aqui eu escrevo o texto do email–1171868400Content-Transfer-Encoding: base64Content-Disposition: attachment; filename=”email_publicidade/frente1.gif” R0lGODlhlASyCfcAABMUFh8aFxgaGx0fIR4hIyIkJiksLiYoKistMjMtNS4yNSk3OjQ6PD07OjU0OjIvLCIeG0U6O0wyLWkzLDRGOip0O05JN3ZZMzg9Qyg9Rz07b1I2RVgseEgjb2g5f3Q5czxCRTxFSjlaWy1HTjpXZTxjYzFuTkJGS0RKTExLSUpMTUdFREpOU0ZLU0tTV1lYVlJVW1ZZWVNOTGZVUW5x
…. e muitas mais letras e numeros….
o que estara mal?
February 21st, 2007 at 1:36 pm
Opa!
Tente colocar a imagem na mesma pasta do script, ok?