Annonces


#1 06/07/08 17:51:06

Mistic Warrior
CtrlAltUser Actif
Lieu: Suisse
OS: Linux [autre]
Date d'inscription: 31/05/04
Messages: 695
Envoyer un MP

  Email  Site web

Mail avec attachment

Hello, j'ai essayé de faire un mail() pour envoyer une pièce jointe, et finalement, ayant des problèmes, j'ai essayé divers scripts pour comprendre ce que je faisais faux. Aucun ne fonctionne, et parfois j'ai la pièce jointe encodée directement affichée en fichier texte, et parfois aucune pièce jointe. Voici l'un des scripts :

Code:

//define the receiver of the email
$to = 'youraddress@example.com';
//define the subject of the email
$subject = 'Test email with attachment';
//create a boundary string. It must be unique
//so we use the MD5 algorithm to generate a random hash
$random_hash = md5(date('r', time()));
//define the headers we want passed. Note that they are separated with \r\n
$headers = "From: webmaster@example.com\r\nReply-To: webmaster@example.com";
//add boundary string and mime type specification
$headers .= "\r\nContent-Type: multipart/mixed; boundary=\"PHP-mixed-".$random_hash."\"";
//read the atachment file contents into a string,
//encode it with MIME base64,
//and split it into smaller chunks
$attachment = chunk_split(base64_encode(file_get_contents('attachment.zip')));
//define the body of the message.
ob_start(); //Turn on output buffering
?>
--PHP-mixed-<?php echo $random_hash; ?>
Content-Type: multipart/alternative; boundary="PHP-alt-<?php echo $random_hash; ?>"

--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

Hello World!!!
This is simple text email message.

--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

<h2>Hello World!</h2>
<p>This is something with <b>HTML</b> formatting.</p>

--PHP-alt-<?php echo $random_hash; ?>--

--PHP-mixed-<?php echo $random_hash; ?>
Content-Type: application/zip; name="attachment.zip"
Content-Transfer-Encoding: base64
Content-Disposition: attachment

<?php echo $attachment; ?>
--PHP-mixed-<?php echo $random_hash; ?>--

<?php
//copy current buffer contents into $message variable and delete current output buffer
$message = ob_get_clean();
//send the email
$mail_sent = @mail( $to, $subject, $message, $headers );
//if the message is sent successfully print "Mail sent". Otherwise print "Mail failed"
echo $mail_sent ? "Mail sent" : "Mail failed";

J'utilise une image, donc je met le type image/jpeg. J'ai essayé de mettre l'adresse relative (images/image.jpg) et absolue (http://...), et cela ne fonctionne pas. Pourtant mon hébergeur accepte mail() et l'upload de fichiers également.

Quelqu'un a-t-il une idée ?

Merci d'avance, salutations

PS: Je suis actuellement à l'armée (obligatoire en Suisse), et donc je ne répondrai pas avant samedi prochain, jour de ma prochaine permission.


In a world without wall nor fences, who needs Windows and Gates ?

TOP Hors ligne

  • Signaler
  • Citer
  • Ajouter à la citation

#2 08/07/08 20:17:58

Malcolm
4d0p73z 14 1337 A7717ud3 !
Equipe Modérateurs
Lieu: unreal://Index.ut2:31337
OS: Linux Debian
Date d'inscription: 03/03/04
Messages: 3432
Site web

Re: Mail avec attachment

Salut,

Si tu veux moins te prendre la tête, je te suggère d'utiliser la classe PHPMailer dispo sur sourceforge : très complète, elle te permet d'envoyer des pj avec des mails en plusieurs formats. GNU/GPL powered  cool


La nature est bien faite : quand mon nez est bouché, ce sont mes pieds qui sentent ...
http://zeffklop.free.fr/singe.gif FYI RTFM ASAP => Tux : La Légende <=
http://www.php-astux.info/images/newslettux2-468x60.pngNewsletTux

Grand défenseur de la Langue Française tongue

TOP Hors ligne

  • Signaler
  • Citer
  • Ajouter à la citation

#3 08/07/08 20:23:57

Ju
ju@jabber.sk
Equipe Admin
Lieu: Boston, Texas
OS: Linux Debian
Date d'inscription: 26/01/04
Messages: 5856
Envoyer un MP

  Email  Site web

Re: Mail avec attachment

J'ai cherché aussi un peu, et je suis arrivé à cette solution.
Mais c'est certains que ça serait plu intéressant de comprendre...



TOP Hors ligne

  • Signaler
  • Citer
  • Ajouter à la citation

#4 12/07/08 12:36:13

Mistic Warrior
CtrlAltUser Actif
Lieu: Suisse
OS: Linux [autre]
Date d'inscription: 31/05/04
Messages: 695
Envoyer un MP

  Email  Site web

Re: Mail avec attachment

Ju a écrit:

J'ai cherché aussi un peu, et je suis arrivé à cette solution.
Mais c'est certains que ça serait plu intéressant de comprendre...

Ouais j'avais vu aussi, mais je voulais essayer moi-même. Bon tant pis, en attendant, je prend ça. Merci pour le conseil wink

Salutations


In a world without wall nor fences, who needs Windows and Gates ?

TOP Hors ligne

  • Signaler
  • Citer
  • Ajouter à la citation
Actuellement aucun autre membre et 1 invité sur ce topic
Membres : [S'enregistrer]

Pied de page du Forum

Pub hébergeur :


CtrlAltSuppr.com, forums officiels de JSAND partagés avec Geek&Hype

Powered by PunCAS (JSAND) based on PunBB
© Copyright 2002–2005 Rickard Andersson