Envoi d'un formulaire vers une boite émail

eminbd Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
2 fichiers: "Formulaire.html" pour saisir les données et "Traitement.php" pour tester les différents champs du formulaire et envoyé ces champs vers une boite émail ..
je me demande est qu'il faut que ces pages doit être en ligne (sur internet) pour que l'envoi vers l'émail fonctionne ? sinon voila mon code que j'ai trouvé sur internet et j'espère que quelqu'un pouvez m'aider et merci d'avance ..:)

Code HTML:
<html>
<head></head>
<body>

<form method="post" action="traitement.php">
<p class="titre">Coordonnées</p>
<fieldset id="coordonnees">
<p id="civilite"><label>Civilité : </label>
<input type="radio" name="civilite" value="M." />M.
<input type="radio" name="civilite" value="Mlle" />Mlle
<input type="radio" name="civilite" value="Mme" />Mme
</p>
<label>Nom : </label>
<input type="text" name="nom" size="30" /><br />
<label>Adresse : </label>
<input type="text" name="adresse" size="30" /><br />
<label>Code postal : </label>
<input type="text" name="codepostal" size="30" /><br />
<label>Ville : </label>
<input type="text" name="ville" size="30" /><br />
<label>Pays : </label>
<select name="pays">
<option value="france">France</option>
<option value="belgique">Belgique</option>
<option value="suisse">Suisse</option>
</select>
<p id="interets"><label>Centres intérêts : </label>
<input type="checkbox" name="interets[]" value="sport" />Sport
<input type="checkbox" name="interets[]" value="cinema" />Cinéma<br />
<input type="checkbox" name="interets[]" value="internet" />Internet
<input type="checkbox" name="interets[]" value="voyages" />Voyages
</p>
</fieldset>
<p class="titre">Message</p>
<fieldset id="message">
<textarea name="comments" rows="5" cols="40"></textarea>
</fieldset>
<p id="buttons">
<input type="submit" value="Envoyer" />
<input type="reset" value="Recommencer" />
</p>
</form>

</body>
</html>
**************************************************
Code PHP:
<?php
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement
remplis :<br/><br/>";
$msg_ok = "Votre demande a bien été prise en compte.";
$message = $msg_erreur;
define('MAIL_DESTINATAIRE','amin_khmir@live.fr'); // remplacer par votre email
define('MAIL_SUJET','Message du formulaire de example.com');

// vérification des champs
if (empty($_POST['civilite']))
$message .= "Votre civilité<br/>";
if (empty($_POST['nom']))
$message .= "Votre nom<br/>";
if (empty($_POST['adresse']))
$message .= "Votre adresse<br/>";
if (empty($_POST['codepostal']))
$message .= "Votre code postal<br/>";
if (empty($_POST['ville']))
$message .= "Votre ville<br/>";
if (empty($_POST['comments']))
$message .= "Votre message<br/>";

// si un champ est vide, on affiche le message d'erreur et on stoppe le script
if (strlen($message) > strlen($msg_erreur)) {
echo $message; die();
}

// sinon c'est ok => on continue
foreach($_POST as $index => $valeur) {
$$index = stripslashes(trim($valeur));
}

$interets = $_POST['interets'];
$sqlinterets = '';
for ($i=0; $i<count($interets); $i++)
{
$sqlinterets .= $interets[$i];
$sqlinterets .= ', ';
}

//Préparation de l'entête du mail:
$mail_entete = "MIME-Version: 1.0\r\n";
$mail_entete .= "From: {$_POST['nom']} "
."<{$_POST['email']}>\r\n";
$mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";
$mail_entete .= 'Content-Type: text/plain; charset="iso-8859-1"';
$mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
$mail_entete .= 'X-Mailer:PHP/' . phpversion()."\r\n";

// préparation du corps du mail
$mail_corps = "Message de : $civilite $nom\n";
$mail_corps .= "Adresse : $adresse, $codepostal $ville, $pays\n";
$mail_corps .= "Ses centres d'intérêts : $sqlinterets\n\n\n";
$mail_corps .= $comments;

// envoi du mail
if (mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete)) {
//Le mail est bien expédié
echo $msg_ok;
} else {
//Le mail n'a pas été expédié
echo "Une erreur est survenue lors de l'envoi du formulaire par email";
}

?>
A voir également:

3 réponses

Utilisateur anonyme
 
Salut,

Non les pages n'ont pas besoin d'être en ligne pour que l'envoi de mail fonctionne, tu peux peux le tester en local.
Quel est le problème avec ton script?
0
eminbd Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour,
ton question est la mienne ..tu peut tester le code qui est juste au dessus et tu me dis ton résulta
0
Utilisateur anonyme
 
Comment ça tu ne l'as jamais testé?
Messages d'erreurs?
0