Formulaire d'envoie d'e-mails avec fichiers joints et accusés de réception

Soyez le premier à donner votre avis sur cette source.

Vue 27 347 fois - Téléchargée 4 286 fois

Description

Un programme qui permet d'écrire des e-mails via une interface Web, avec la possibilité de joindre des fichiers ou de mettre un accusé de réception pour savoir quand le destinataire ouvre son e-mail. Cet accusé de réception est envoyé lorsque le lecteur télécharche une image de 1 pixel contenu dans l'e-mail (fonction de plus en plus bloqué par les lecteurs d'e-mails).
Le programme permet aussi l'archivage des e-mails envoyés.
Le tous est protégé par un (voir plusieurs) mots de passe, par défaut : test.

Source / Exemple :


<!-- Code permettant de créer un mot de passe à l'aide de la fonction MD5 de PHP -->
<!-- Résultat à copier dans le tableau $motpassevalide de liste.php -->
<!-- Le mot de passe par défaut est test -->
<html>
<head>
<title>MP</title>
</head>
<body>
<form method="GET" action="mp.php">
<input type="password" name="mp"><br />
<input type="submit"><br />
</form>
<?php
if(isset($_GET['mp']))
{
    echo(md5($_GET['mp']));
}
?>
</body>
</html>

Conclusion :


Le code est un peu mal commenté et confu. Mais il marche quand même assès bien.

N'hésitez pas à me faire part de vos améliorations !

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_GRenard
Messages postés
1663
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1 -
C'est pas mal si ca fonctionne, je ne l'ai pas testé... Par contre tu te forces pour etre HTML4.01 standard... mais le validateur n'approuve pas cela...
Tu pourrais faire la même chose avec PHP... <?php au lieu de <?
Va lire ceci : http://www.phpcs.com/code.aspx?id=24870

Archives des emails ... si aucun .txt n'existe -> ca plante...

L'accusé de réception, est-ce que ca popup comme dans Outlook Express ?
cs_ILP
Messages postés
28
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
24 septembre 2012
-
L'accusé de réception, c'est une image de 1×1 pixel qui est affiché en bas de l'e-mail et qui lorsqu'elle est téléchargé à partir du serveur qui a envoyer l'e-mail, renvoie un e-mail de confirmation à l'expéditeur.

Ce système ne fonctionne que si l'image est affiché, et il me semble que par défaut Outlook Express avec SP2 ou Mozilla Thunderbird n'affichentt pas les images des e-mails, et plus particulièrement celles de 1×1 pixel.
HRdesalpes
Messages postés
64
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
29 juillet 2006
-
il les affiche cependant ta un message ou il faut cliquer pour que sa marche sinon moi je cherche un truc pour envoyer un mail avec piece jointe en .conf une ider?
cs_ILP
Messages postés
28
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
24 septembre 2012
-
Je sais pas, un truc du genre :

<?php
//Expéditeur
$entete = "From: moi@domaine.ext";
// Destinataire
$a = "toi@domaine.ext";
// Sujet de l'e-mail
$objet = "Sujet de l'email";
// Contenu de l'e-mail
$message = "Contenu de l'email...\n";
// Adresse du fichier .conf
$fichierajoindre = "fichier.conf";

$typemessage = "Content-type: Multipart/Mixed; boundary=PHPmail---".md5($_SERVER["REMOTE_ADDR"])."---\n";
$entetemime = "--PHPmail---".md5($_SERVER["REMOTE_ADDR"])."---\n";

$entetemessage = $entetemime;
$entetemessage .= "Content-Type: text/plain; charset=iso-8859-1\n";
$entetemessage .= "Content-Transfer-Encoding: 7BIT\n";
$entetemessage .= "Content-description: Mail message body\n\n";

$fichiersjoint .= "Content-Type: application/octet-stream; name=" . $fichierajoindre . "\n";
$fichiersjoint .= "Content-Disposition: attachment; filename="" . $fichierajoindre . ""\n";
$fichiersjoint .= "Content-Transfer-Encoding: BASE64\n\n\n";

$fichierjoint = fopen($fichierajoindre, "rb");
$contenufichierajoindre = fread($fichierjoint, filesize($fichierajoindre));
fclose($fichierjoint);
$fichiersjoint .= chunk_split(base64_encode($contenufichierajoindre));

// Envoie de l'e-mail
mail($a, $objet, $entetemessage.$message.$fichiersjoint.$entetemime, $entete.$typemessage);
?>

Je sais pas si ça marche, j'ai pas essayé. Sinon regarde vers les lignes 143 du fichier mail.php.
HRdesalpes
Messages postés
64
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
29 juillet 2006
-
nan car ya un generateur juste avant qui envoie le texte généré par dessus et je ve que se sois se texte généré je sais je suis exigent lol

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.