Envoyez-nous un message
demande de contact
//Données du client
$dest="contact@perchebeky.com";
$site="perchebeky.com";
$sujet="Demande d'infos";
$email=$_POST['email'];
if(isset($_POST['validation'])){
$error=array(); // initialisation du tableau des erreurs éventuelles
// instructions traitant les champs et alimentant le cas échéant le tableau $error
// par exemple (expression régulière retournant TRUE si la variable $email,
// qui doit correspondre au nom du champ de formulaire concerné,
// est bien de la forme d'une adresse e-mail)
if(!ereg ("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $email)){
// si l'adresse n'est pas valide, on insère une entrée supplémentaire
// à la fin du tableau $error avec la fontion array_push()
array_push($error,"
"; // on le "dépile" par le haut } echo ""; }else{ // Les headers pour un mail multiparts $headers= "MIME-Version: 1.0\n"; $headers.= "From: \"$email\" <$email>\n"; $headers.= "Content-type: multipart/mixed;\n"; // Chaine permettant de différencier les différentes parties du mail $limite = '_parties_'.md5(uniqid (rand())); $headers.= " boundary=\"----=$limite\"\n\n"; // Première partie, corps du mail en HTML $texte = "------=$limite\n"; //$texte.= "Content-type: text/html; charset=\"iso-8859-1\"\n\n"; if(count($_POST)){ while (list($key, $val) = each($_POST)){ if ($key != "validation"){ $texte.="\r\n$key : $val\n"; } } } // Traitement pour attacher une PJ // D'abord on lit le fichier $fichier=$_FILES["fichier"]["tmp_name"]; $fichier_name=$_FILES["fichier"]["name"]; //------------------------------------------------------------------------- $the_path="./uploadMail/"; $currootdir = dirname(__FILE__); $data1 = fread(fopen($_FILES['fichier']['tmp_name'], "r"),$_FILES['fichier']['size']); $NamePhoto = $_FILES['fichier']['name']; $BinPhoto = $data1; $fo = fopen($the_path.$NamePhoto,"w"); $fl = fputs($fo,$BinPhoto); fclose ($fo); $fichier = $the_path.$NamePhoto; $contenu = file_get_contents($fichier); $attachement = "\n------=$limite\n"; // Dans mon exemple, il s'agit d'un fichier html, il faut mettre le bon mime type $attachement .= "Content-Type: text/html; name=\"$fichier_name\"\n"; $attachement .= "Content-Transfer-Encoding: base64\n"; $attachement .= "Content-Disposition: attachment; filename=\"$fichier_name\"\n\n"; // Ca y est on joint le fichier en l'encodant en base 64 $attachement .= chunk_split(base64_encode($contenu)); // enfin on envoi le mail mail($dest, $sujet, $texte.$attachement, $headers); unlink($fichier); ?>
$email = "";
$nom = "";
$societe = "";
$adresse = "";
$CP = "";
$ville = "";
$telephone = "";
$message = "";
}
}
?>
Attention,
l'adresse e-mail saisie n'est pas valide !
");
}
$extensions = array('.png', '.pdf', '.jpg', '.jpeg', '.eps', '.ai');
// récupère la partie de la chaine à partir du dernier . pour connaître l'extension.
$extension = strrchr($_FILES['fichier']['name'], '.');
//Ensuite on teste
//if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
//{
//array_push($error,"Vous devez uploader un fichier de type png, jpg, jpeg, pdf, eps ou ai...
");
//}
// taille maximum (en octets)
$taille_maxi = 10000000;
//Taille du fichier
$taille = filesize($_FILES['fichier']['tmp_name']);
if($taille>$taille_maxi)
{
array_push($error,"Le fichier est trop gros...
");
}
if(count($error)){ // si le tableau $error n'est pas vide
// affichage des différentes erreurs
echo "";
while($error){ // tant que le tableau n'est pas vide
echo array_shift($error).""; // on le "dépile" par le haut } echo ""; }else{ // Les headers pour un mail multiparts $headers= "MIME-Version: 1.0\n"; $headers.= "From: \"$email\" <$email>\n"; $headers.= "Content-type: multipart/mixed;\n"; // Chaine permettant de différencier les différentes parties du mail $limite = '_parties_'.md5(uniqid (rand())); $headers.= " boundary=\"----=$limite\"\n\n"; // Première partie, corps du mail en HTML $texte = "------=$limite\n"; //$texte.= "Content-type: text/html; charset=\"iso-8859-1\"\n\n"; if(count($_POST)){ while (list($key, $val) = each($_POST)){ if ($key != "validation"){ $texte.="\r\n$key : $val\n"; } } } // Traitement pour attacher une PJ // D'abord on lit le fichier $fichier=$_FILES["fichier"]["tmp_name"]; $fichier_name=$_FILES["fichier"]["name"]; //------------------------------------------------------------------------- $the_path="./uploadMail/"; $currootdir = dirname(__FILE__); $data1 = fread(fopen($_FILES['fichier']['tmp_name'], "r"),$_FILES['fichier']['size']); $NamePhoto = $_FILES['fichier']['name']; $BinPhoto = $data1; $fo = fopen($the_path.$NamePhoto,"w"); $fl = fputs($fo,$BinPhoto); fclose ($fo); $fichier = $the_path.$NamePhoto; $contenu = file_get_contents($fichier); $attachement = "\n------=$limite\n"; // Dans mon exemple, il s'agit d'un fichier html, il faut mettre le bon mime type $attachement .= "Content-Type: text/html; name=\"$fichier_name\"\n"; $attachement .= "Content-Transfer-Encoding: base64\n"; $attachement .= "Content-Disposition: attachment; filename=\"$fichier_name\"\n\n"; // Ca y est on joint le fichier en l'encodant en base 64 $attachement .= chunk_split(base64_encode($contenu)); // enfin on envoi le mail mail($dest, $sujet, $texte.$attachement, $headers); unlink($fichier); ?>
Email envoyé à
. |