Ennvoyer un Mail

bamly - 4 févr. 2014 à 00:42
jordane45
Messages postés
36088
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
18 août 2022
- 4 févr. 2014 à 01:03
Bonjour,
Bonjour ,j'ai un problème envoyer un mail

page : reservation
<form action="res.php" method="post" id="contact" name="formulaire">
<div class="form_settings">
<p><span>Nom</span><input class="contact" type="text" name="name" required /></p>
<p><span>Chambre & Suite</span>
<select class="contact" name="chambre">
<option value="JELLOUL">Choisissez...</option>
<option value="JELLOUL">JELLOUL</option>
<option value="DADDA">DADDA</option>
<option value="MOUIMA">MOUIMA</option>
<option value="LALLA">LALLA</option>
<option value="LAKHTI">LAKHTI</option>
<option value="HIBA">HIBA</option>
<option value="GHITA">GHITA</option>
<option value="LINA">LINA</option>
<option value="MAZZA">MAZZA</option>
<option value="YAYA">YAYA</option>
<option value="ELGHALIA">ELGHALIA</option>
</select>
</p>
<p><span>Email:</span><input class="contact" name="email" type=email placeholder="***@***" required /></p>
<p><span>Date d'arrivée:</span><input class="contact" type="text" name="date1" required class="input input2" value="mm/dd/yyyy " onBlur="if(this.value=='') this.value='mm/dd/yyyy '" onFocus="if(this.value =='mm/dd/yyyy ' ) this.value=''" onclick="new calendar(this);"/></p>
<p><span>Date départ:</span><input class="contact" type="text" name="date2" required class="input input2" value="mm/dd/yyyy " onBlur="if(this.value=='') this.value='mm/dd/yyyy '" onFocus="if(this.value =='mm/dd/yyyy ' ) this.value=''" onclick="new calendar(this);" /></p>
<p><span>Message</span><textarea class="textarea" rows="5" cols="50" name="message" required></textarea></p>
</div>

<div class="form_settings">
<input class="submit" type="submit" name="contact_submitted" value="Envoyer" />

</div>
</form>


page :res.php



<?php

$email_dest = "***@***";




// E-mail headers:
$headers ="MIME-Version: 1.0 \n";
$headers .="From: Robot_site<***@***>\n";


$headers .="Content-Type: text/html; charset=iso-8859-1 \n";

$subject = "Contact";

$partie_entete = "<html><head>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#eee>";

//for ($a=1; $a<= $_POST['nbre_champs_texte']; $a++) {
//$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_champ'.$a] . " = " . $_POST['champ'.$a] . "</font><br>";
//}
//
//if ($_POST['nbre_zone_email'] != 0) {
//$partie_zone_email = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_email'] . " = " . $_POST['zone_email'] . "</font><br>";
//}
//
//if ($_POST['nbre_zones_texte'] != 0) {
//$partie_zone_texte = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_texte'] . "</font><br>";
//$partie_zone_texte = stripslashes($partie_zone_texte);
//}
$nom1="Le nom";
$adrmail1="Email";
$Message1="Le Message est";

$name ="<font face='Verdana' size='2' color='#003366'>" . $nom1 . " = " . $_POST['name'] . "</font><br>";
$adrmail ="<font face='Verdana' size='2' color='#003366'>" . $adrmail1 . " = " . $_POST['email'] . "</font><br>";
$message ="<font face='Verdana' size='2' color='#003366'>" . $Message1 . " = " . $_POST['message'] . "</font><br>";


$fin = "</body></html>";

$sortie = $partie_entete . $name . $adrmail . $message . $fin;
header("location: reservation.html");

// Send the e-mail
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} // Closing if !mail...

// Closing if edit
?>

ce code est ca marche mais quand j'ajoute la chambre et les date n'a marche pas

1 réponse

jordane45
Messages postés
36088
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
18 août 2022
351
Modifié par jordane45 le 4/02/2014 à 01:40
Bonjour.
Dans ta page res.php ajoute un print_r ($_POST) et regarde si les valeurs reçues sont conformes à ce que tu souhaites.

De plus, pourrais tu remettre en forme ton message pour placer ton code dans LES BALISES DE CODE
...Cela nous en faciliterait la lecture

Et également... supprime TOUS les bouts de code que tu as "commentés" ... laisse nous QUE le code utilisé et "actif".

Ajoute nous également le code qui contient tes fameux champs date et chambre (ils sont bien dans ta première page mais je ne les trouve pas dans ta page res.php...).


Enfin, Il est préférable de vérifier si la variable passée par POST a bien été initialisée avant de l'utiliser ( voir ISSET)
exemple :
$nb_champs_texte = isset($_POST['nbre_champs_texte']) ? $_POST['nbre_champs_texte'] : 'error';

Ce qui te permet par la suite de détécter dans ton mail les éventuels champs mals remplis ou "compris" lors de leur passage via la méthode POST.
( tu peux remplacer 'error' par '' mais le temps de tes test c'est plus "parlant' d'avoir un message d'erreur qu'une chaine vide).





Cordialement,
Jordane
0