1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
| <?php
$success=false;
$message="";
$verif="!^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-zA-Z]{2,4}$!"; // INIT DES VARIABLES
if(!isset($_POST['societe'])) $societe=""; else $societe=htmlentities(addslashes($_POST['societe']));
...
if(!isset($_FILES['fichier'])) $fichier=""; else $fichier=$_FILES['fichier'];
$name_file = $_FILES['fichier']['name'];
$source = $_FILES['fichier']['tmp_name'];
$typemime = $_FILES['fichier']['type'];
$taille = $_FILES['fichier']['size'];
// extensions autorisées
$extensions_ok = array('txt', 'doc', 'rtf', 'pdf');
// la taille maximale du fichier en octets, ici 2mo
$taille_max = 2097152;
move_uploaded_file($source, "./".$name_file);
//----------------------------------
// Construction de l'entête
//----------------------------------
if (($fichier!="")&&($tel!="")&&($nom!="")&&($prenom!="")&&($mail!="")&&($sujet!="")) { //si champs vides
if(($mail) && (preg_match($verif, $mail))){ // si le mail est bon
if( !in_array( substr(strrchr($_FILES['fichier']['name'], '.'), 1), $extensions_ok ) ) { //si bon format
if( file_exists($source) && $taille > $taille_max) { // si taille autorisée
if($_FILES['fichier']!="")
{
$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: $typemime; charset=\"iso-8859-1\"\r\n";
$msg .= "Content-Transfer-Encoding:8bit\r\n";
$msg .= "\r\n";
$msg .= "Raison sociale : $societe";
$msg .= "\r\n";
$msg .= "Nom : $nom";
$msg .= "\r\n";
$msg .= "Prénom : $prenom";
$msg .= "\r\n";
$msg .= "Statut : $sujet";
$msg .= "\r\n";
$msg .= "Adresse : ".$_POST['adresse1']."";
$msg .= "\r\n";
$msg .= "Téléphone : $tel";
$msg .= "\r\n";
$msg .= "Portable : $portable";
$msg .= "\r\n";
$msg .= $_POST['message1'];
$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: $typemime; name=\"$file\"\r\n";
$msg .= "Content-Transfer-Encoding: base64\r\n";
$msg .= "Content-Disposition: attachment; filename=\"$file\"\r\n";
$msg .= "\r\n";
$msg .= $attachment . "\r\n";
$msg .= "\r\n\r\n";
$msg .= "--$boundary--\r\n";
}
$destinataire = 'toto@neuf.fr';
$expediteur = $_POST['mail'];
$reponse = $expediteur;
mail($destinataire, 'Envoi de fichier', $msg,
"Reply-to: $reponse\r\nFrom: $expediteur\r\n".$header);
}
if($name_file!="")
{
unlink($name_file);
}
print("<br>\n");
//----------------------------------
// Construction de l'entête
//----------------------------------
$success=true;
$message = "Votre demande $prenom $nom a été postée avec succès ! <br />
Elle sera traitée dans les meilleurs délais.<br />
Nous vous remercions de votre visite !";
}else{
$sucess = false;
$message = 'Extension non autorisée !';
}
}else{
$sucess = false;
$message = 'Votre fichier doit faire moins de 2mo !';
}
}else{
$verif=false;
$message= "Cette adresse Email n'est pas valide";
}
}else{
$success = false;
$message = "Merci de remplir les champs obligatoires";
}
?> |
Partager