begin process at 2010 02 10 10:09:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

problème - Envoi de mail avec fichier en PHP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème - Envoi de mail avec fichier en PHP

vendredi 16 septembre 2005 à 17:07:30 | problème - Envoi de mail avec fichier en PHP

FalconDark

Bonjour.

Je suis sur OVH (pour situer l'environnement)

Dans le même dossier j'ai :

- mon fichier mail3.php avec le formulaire

<html>
<body>

<form ENCTYPE="multipart/form-data" action="./mail4.php" method=POST>
<center>
De: <input type=text name = "from" size="30"><br>
Destinataire: <input type=text name = "to" size="30"><br>
Sujet: <input type=text name = "sujet" size="30"><br><br>
Texte :<br><textarea name="message" rows="15" cols="40"></textarea><br>
<INPUT TYPE=FILE NAME="monfichier"><BR>
<input type=submit value="envoi">
</center>
</form>

</body>
</html>



-  ma page mail4.php qui m'envoie les infos

<html>
<body> <center>
<?

$name_file = $_FILES['monfichier']['name'];
$source=$_FILES['monfichier']['tmp_name'];

move_uploaded_file($source, "./".$name_file);

$extension=get_extension($name_file);

$type="text/plain";
if($type=="doc")
{
   $type="text/vnd.ms-word";
}
else if($type=="xls")
{
   $type="text/vnd.ms-excel";
}

$type2="image/png";

if($extension=="gif")
{
   $type2="image/gif";
}
else if($extension=="bmp")
{
   $type2="image/bmp";
}

function get_extension($filename)
{
   $parts = explode('.',$filename);
   $last = count($parts) - 1;
   $ext = $parts[$last];
   return $ext;
}

//----------------------------------
// Construction de l'entête
//----------------------------------

if($_POST['to']!="")
{
$boundary = "-----=".md5(uniqid(rand()));
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
$header .= "\r\n";

$msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";

$msg .= "--$boundary\r\n";

$msg .= "Content-Type: $type; charset=\"iso-8859-1\"\r\n";
$msg .= "Content-Transfer-Encoding:8bit\r\n";
$msg .= "\r\n";
$msg .= $_POST['message'];
$msg .= "\r\n";

if($name_file!="")
{
$file = $name_file;
$fp = fopen($file, "rb"); 
$attachment = fread($fp, filesize($file));
fclose($fp);

$attachment = chunk_split(base64_encode($attachment));


$msg .= "--$boundary\r\n";
$msg .= "Content-Type: $type2; name=\"$file\"\r\n";
$msg .= "Content-Transfer-Encoding: base64\r\n";
$msg .= "Content-Disposition: inline; filename=\"$file\"\r\n";
$msg .= "\r\n";
$msg .= $attachment . "\r\n";
$msg .= "\r\n\r\n";
$msg .= "--$boundary--\r\n";
}

$destinataire = $_POST['to'];
$expediteur   = $_POST['from'];
$reponse      = $expediteur;
echo "Mail envoyé à $destinataire";

mail($destinataire, $_POST['sujet'], $msg,
     "Reply-to: $reponse\r\nFrom: $expediteur\r\n".$header);

}

if($name_file!="")
{
unlink($name_file);
}
print("<br>\n");
print("<br><A href=./mail3.php target=\"principal\"><font size=2>Envoyer un autre mail</font></A>");
?>
</center>
</body>
</html>


Quand je cliques sur "envoie" je reçois bien le mail... mais j'ai un problème avec le fichier. Il n'est pas en pièce jointe mais contenu dans le corps du mail... en gros j'ai une suite incessante de caractère  XD

Quelqu'un voit-il où est l'erreur ? j'ai beau chercher et je ne trouve pas  @_@
Si vous trouvez je serait soulagé parce que le client ne va pas tarder à revenir à la charge  


Merci d'avance  :)

vendredi 16 septembre 2005 à 17:35:50 | Re : problème - Envoi de mail avec fichier en PHP

FalconDark

Réponse acceptée !

C'est résolu

L'astuce est de remplacer "\r\n" par "\n"

Voilou


Cette discussion est classée dans : mail, file, type, msg, name


Répondre à ce message

Sujets en rapport avec ce message

problème avec les if et les else... [ par sebmayer ] Bonjour,voila j'ai créé un petit programme pour uploader mes images, mais j'ai un petit problème avec mes vérifications de champs (les else et les if. problème d'upload [ par romiain ] Salut à tous, J'ai un problème avec mon upload, lorsque je charge une photo j'ai l'erreur suivante Notice: Undefined variable: name_file in c:\program email ne marche pas [ par amita ] merci à l'équipej'ai un porblème c'est que je ne recoi riens sur mon email yahoo ou olympe-network.comaidez moi svpavec ça  :phpformmail.php aide pour correction de mon cde php [ par abiziane ] je veux creer un site web sur lequel j'aimerais que le internautes puissent uploader des fichier comme les fichier word ,pdf , image...j' ai fait le c Récupération de pièce jointe dans un formulaire html [ par golgothe ] Bonjour, je souhaiterais envoyer un mail avec une pièce jointe via un formulaire html. Le but est de récupérer un cv et une lettre de motivation. J'ai rendre des champs obligatoires dans un formulaire [ par Emases ] Bonjour à tousJ'ai cherché pendant des heures sur le net y compris sur ce site une réponse claire (en tout cas pour moi qui suis un débutant) à un pb recuperation infos input type file [ par ju0123456789 ] Bonjour,Je voudrais savoir comment on fait pour récupérer les infos d'un INPUT de type FILEPour nimporte quel autre input "normal" il suffit de faire 1formulaire sur 2 pages .....? [ par caliche ] Bonjour, je voudrait créer un mini-formulaire sur ma page d'accueil et que lorsqu'on clic sur "envoyer" cela redirige vers une autre page où se termin Envoyé les données d'une table par mail [ par Gille59 ] Bonjour J'ai un problème d'envoi de données par le mail. J'ai un panier qui est rempli par un client, j'ai merais que quand il clique sur "commander" php/mysql [ par seybou ] Bonjour, j'ai besoin de l'aide pour faire telecharger des fichiers binaires sur un serveur bien donné, ensuite les traduire en txt,les concatener par


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales