Page 1 sur 1

Envoyer pièce jointe mail()

Posté : 09 oct. 2014, 15:49
par jimmy1708
Bonjour, j'ai en ma possession un formulaire que je me suis constitué afin que l'on puisse me contacter, et j'aurais aimé que l'utilisateur puisse me joindre un fichier.



Voici mon formulaire (100% fonctionnel).
<form class="contact_form" name="contact_form" id="contact_form" action="traitement.php" method="post">

		<!-- User nom -->
		<div class="input-group">
  			<span class="input-group-addon">Nom</span>
  			<input type="text" class="form-control" placeholder="Votre nom" name="nom">
		</div>

		<!-- User prenom -->
		<div class="input-group" style="margin-top:20px;">
  			<span class="input-group-addon">Prénom</span>
  			<input type="text" class="form-control" placeholder="Votre prénom" name="prenom">
		</div>

		<!-- User e-mail -->
		<div class="input-group" style="margin-top:20px;">
  			<span class="input-group-addon">E-mail</span>
  			<input type="text" class="form-control" placeholder="Votre adresse mail" name="email">
		</div>

		<!-- Mail objet -->
		<div class="input-group" style="margin-top:20px;">
  			<span class="input-group-addon">Objet</span>
  			<input type="text" class="form-control" placeholder="Objet du message" name="objet">
		</div>

		<!-- Mail sujet -->
		<div class="form-group" style="margin-top:20px;width:500px;margin:auto;padding-top:20px;">
			<span class="input-group-addon">Sujet</span>
   			<textarea class="form-control" rows="3" name="message" form="contact_form" placeholder="Votre message" id="message"></textarea>
	 	</div>
		<!-- Submit -->
	 		<button type="submit" class="btn btn-default" style="margin-top:5px;">Envoyer</button>
	</form>
Et voici mon code de réception de d'envoie du mail
if(isset($_POST) && isset($_POST['nom']) && isset($_POST['prenom']) && isset($_POST['email']) && isset($_POST['objet']) && isset($_POST['message'])){
	if(!empty($_POST['nom']) && !empty($_POST['prenom']) && !empty($_POST['email']) && !empty($_POST['objet']) && !empty($_POST['message'])){

		// Informations mail
		$destinataire	=	'MONMAIL';
		$nom			=	$_POST['nom'];
		$prenom			=	$_POST['prenom'];
		$objet			=	'Contact du site: '.$_POST['objet'];
		$email			=	$_POST['email'];
		$message		=	'<b>Nom:</b> '.$nom.'<br/><br/><b>Prénom:</b> '.$prenom.'<br/><br/><b>Adresse mail:</b> '.$email.'<br/><br/><b>Message:</b><br/>'.$_POST['message'].'<br/>';

		// Entete
		$entete 		= 	'To: Contact du site <MONMAIL>'."\r\n" .
							'From: ' . $_POST['nom'] . ' ' . $_POST['prenom'] . '<MONMAIL>' . "\r\n" .
							'Reply-To: ' . $_POST['nom'] . ' ' . $_POST['prenom'] . '<'.$email.'>' . "\r\n" .
							'MIME-Version: 1.0' . "\r\n".
							'Content-type: text/html; charset=iso-8859-1' . "\r\n";
		
		//Envoi du mail
		ini_set("SMTP", "smtp.gmail.com"); 
		ini_set("smtp_port", 587 );
		ini_set("sendmail_from", "MONMAIL");
		if(mail($destinataire, $objet, $message, $entete)) { 
			?>
			<style type="text/css">
			#idElement{ 
			   animation-name:monAmination; -webkit-animation-name:monAmination; 
			   -moz-animation-name:monAmination; -o-animation-name:monAmination; 
			   animation-duration:4s; -webkit-animation-duration:4s; 
			   -moz-animation-duration:4s; -o-animation-duration:4s; 
			   } 
			@keyframes monAmination{from {top:-400px;} to {top:0px;}} 
			@-webkit-keyframes monAmination{from {top:-400px;} to {top:0px;}} 
			@-moz-keyframes monAmination{from {top:-400px;} to {top:0px;}} 
			@-o-keyframes monAmination{from {top:-400px;} to {top:0px;}} 
			</style>


			<div class="mail_ok" style="width:225px;margin:auto">
				<div class="alert alert-success" role="alert">Votre mail à bien été envoyé !</div>
			</div>

			<?php
		}
	}
	else {
		echo '<p class="contact_error">Vous n\'avez pas saisi correctement les informations de contact !</p>';
		header("location=contact.php");
	}
}


Merci de bien vouloir m'aider dans mes recherches :)
PS : les "MONMAIL" sont juste là pour ne pas divulguer mes informations.

Re: Envoyer pièce jointe mail()

Posté : 11 oct. 2014, 01:20
par moogli
salut,

pour l'upload il y a un tuto la.
tu peux aussi utiliser la classe de AB faq-tutoriels/telechargement-fichier-av ... 53523.html

il y a un exemple complet de ce que tu veux dans la doc de la fonction mail http://fr2.php.net/manual/fr/function.mail.php#83491

Sinon une classe comme phpmailer peux te mâcher le boulot ;)

@+