• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

GpL

Envio de mail com anexo(imagem)

4 mensagens neste tópico

Bem, pessoal, estou aqui com um problema, tenho aqui um script para enviar email, muito simples e já andei a pesquisar como é que se põe anexos mas ainda não consegui por isso a funcar.. vou deixar aqui o script para o envio de mail que eu tenho a ver se me dão ideias de como por aqui um anexo.. o que eu queria era que o user fizesse browse, escolhesse uma imagem, e ela fosse anexada qd ele enviasse o mail..

<?php

if(isset($_POST['submit'])) 
{ 

$to = 'teste@hotmail.com';
$subject = 'Candidatura a staff ';
$message = $_POST['texto'];
$nome = $_POST['nome'];
$morada = $_POST['morada'];
$mail=$_POST['email'];
$tlmv = $_POST['tel'];
$headers = "From: ".$mail;
$mensagem="Nome: ".$nome."\n\r"."Morada: ".$morada."\n\r"."Telemovel: ".$tlmv."\n\r".$message;


mail("$to", "$subject", $mensagem, "From: $mail");
echo "Candidatura efectuada com sucesso, aguarde o nosso contacto!";

}
?>

Fico à espera da ajuda..

já agora cumprimentos para os sobreviventes dos tempos em que o PAP começou  :P

APARTE: Usa Geshi, para o post ficar mais legível. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Anexar imagens (ou outro tipo de ficheiros) involve criar uma série de headers específicos, e um pouco de magia negra.

O mais rápido/simples/saúdavel seria usares uma biblioteca para envio de emails, recomendo a swiftMailer, que te permita fazer isso e muito mais com razoavelmente poucas linhas de código.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas. Estou a usar o swiftmailer como aconselhado e gerei o seguinte codigo..

<?php

require_once('/lib/swift_required.php');

$smtp = Swift_SmtpTransport::newInstance('localhost', 25)
  ->setUsername(' ... ')
  ->setPassword(' ... ');

$mailer = Swift_Mailer::newInstance($smtp);

$message = Swift_Message::newInstance('CANDIDATO A STAFF');
$message
  ->setTo(array(
    'luis_bracara@hotmail.com',
    'user2@example.org' => 'User Two',
    'user3@exmaple.org' => 'Another User Name'
  ))
  ->setFrom(array('your@address.com' => 'Your Name'))
  ->attach(Swift_Attachment::fromPath('img2.jpg'))
  ->setBody(
    'Here is an image <img src="' . $message->embed(Swift_Image::fromPath('img2.jpg')) . '" />','text/html')
  ->addPart('This is the alternative part', 'text/plain')
  ;

if ($mailer->send($message))
{
  echo "Message sent!";
}
else
{
  echo "Message could not be sent.";
}
?>

O que acontece é que eu tenho o windows 7 que segundo andei a pesquisar não tem server smtp ou algo do género, logo ja tinha aqui instalado um software que é o smtp4dev, só que isto abre me os mails que envio por smtp em .TXT e não consigo ver se a estrutura do mail esta boa, se o anexo realmente lá está, etc.. alguém aconselha outro software para smtp diferente ? ou outra alternativa ?

Desde já obrigado ;)

Cumprimentos,

Luis Macedo

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora