Merçi bien de m'avoir aider ! apres coup je comprends mieux la syntaxe à present, c'est vrai que je n'étais pas loin !
Je voulais savoir votre avis si possible entre mes 2 codes justement, lequel vous parait le mieux et le plus sur... :
<?php
$email_webmaster = "[email protected]";
// === traitement des données du formulaire ============================================================
if (isset($_POST["envoyer"])){
// le formulaire a été soumis
$etat = "erreur";
// Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur
// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
if (isset($_POST["email_expediteur"])) {
$_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
}
if (isset($_POST["titre"])) {
$_POST["titre"]=trim(stripslashes($_POST["titre"]));
}
if (isset($_POST["message"])) {
$_POST["message"]=trim(stripslashes($_POST["message"]));
}
// --- test de la validité des champs saisis ---
if (empty($_POST["email_expediteur"])) {
// il manque l'email de l'expéditeur
$erreur="Saisissez votre adresse email...";
}
elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["email_expediteur"])){
// l'adresse e-mail n'est pas valide
$erreur="Votre adresse e-mail n'est pas valide...";
}
elseif (empty($_POST["message"])) {
// le message est vide
$erreur="Saisissez un message...";
}
else {
// --- tous les champs sont correctement remplis: on pourra envoyer le mail ---
$etat="ok";
}
}
else {
// --- le formulaire n'a pas été soumis ---
$etat="attente";
}
// === fin de traitement des données du formulaire =======================================================
?>
<h2>Contacter le webmaster</h2>
<?php
if ($etat!="ok"){// le formulaire n'a pas été soumis, ou soumis avec une erreur
if ($etat=="erreur"){
//le formulaire a été soumis avec une erreur
echo "<p><strong>".$erreur."</strong></p>\n";
// afficher le message d'erreur
}
?>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>?page=test">
<p><label for="email_expediteur">Votre adresse e-mail (obligatoire):</label><br />
<input type="text" size="40" name="email_expediteur" id="email_expediteur" value="<?php
if (!empty($_POST["email_expediteur"])) {
// l'adresse email de l'expéditeur a été saisie: la réafficher
echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="titre">Titre de message (facultatif):</label><br />
<input type="text" size="40" name="titre" id="titre" value="<?php
if (!empty($_POST["titre"])) {
// le titre du message a été saisi: le réafficher
echo htmlspecialchars($_POST["titre"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="message">Message (obligatoire):</label><br />
<textarea name="message" id="message" cols="40" rows="5"><?php
if (isset($_POST["message"])) {
// le message a été saisi: le réafficher
echo htmlspecialchars($_POST["message"],ENT_QUOTES);
}
?></textarea>
</p>
<p><input type="submit" name="envoyer" value="Envoyer" />
</p>
</form>
<?php
}
else {
// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "MIME-Version: 1.0";
if (@mail($email_webmaster,$_POST["titre"],$_POST["message"],$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"" . $_SERVER["PHP_SELF"] . "?page=test\">Envoyer un autre message...</a>\n";
}
else {
// erreur lors de l'envoi du mail
echo "Un problème s'est produit lors de l'envoi du message.\n";
echo "<a href=\"" . $_SERVER["PHP_SELF"] . "?page=test\">Envoyer un autre message...</a>\n";
}
}
?>
Ou mon "ancien" :
<h2>Contacter yan.k</h2>
<?php
if($_POST)
{
//Email de la personne qui reçoit l'email
$destinataire = "[email protected]";
if(empty($_POST['nom']) OR empty($_POST['email']) OR empty($_POST['titre']) OR empty($_POST['contenu']))
{
echo "<p style='color: red;'>Veuillez remplir tous les champs.</p>";
}
else
{
mail($destinataire, stripslashes($_POST['titre']), stripslashes($_POST['contenu']), "From: ".$_POST['email']."\nReply-To: ".$_POST['email']);
echo "<p style='color: #ffffff;'>Votre message a bien été envoyé.</p>";
}
}
?>
<form action='<?php echo $PHP_SELF; ?>?page=test' method='post'>
<fieldset>
<p>
<label for="nom">Votre nom : </label>
<span style="color: red;">*</span><br />
<input type='text' name='nom' size='20' maxlength="50" />
<br />
<label for="email">Votre mail : </label>
<span style="color: red;">*</span><br />
<input type='text' name='email' size='20' maxlength="50" />
<br />
<label for="email">Titre du mail : </label>
<span style="color: red;">*</span><br />
<input type='text' name='titre' size='20' maxlength="50" />
<br />
<label for="contenu">Contenu : </label>
<span style="color: red;">*</span><br />
<textarea name="contenu" cols="50" rows="5"></textarea><br />
<span style="color: red;">* : <label for="obligatoire">Informations obligatoire</label></span></p>
<p><input type="submit" value="Envoyer" /></p>
</fieldset>
</form>
Merçi

Merçi bien de m'avoir aider ! apres coup je comprends mieux la syntaxe à present, c'est vrai que je n'étais pas loin ! :wink:
Je voulais savoir votre avis si possible entre mes 2 codes justement, lequel vous parait le mieux et le plus sur... :
[php]<?php
$email_webmaster = "
[email protected]";
// === traitement des données du formulaire ============================================================
if (isset($_POST["envoyer"])){
// le formulaire a été soumis
$etat = "erreur";
// Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur
// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
if (isset($_POST["email_expediteur"])) {
$_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
}
if (isset($_POST["titre"])) {
$_POST["titre"]=trim(stripslashes($_POST["titre"]));
}
if (isset($_POST["message"])) {
$_POST["message"]=trim(stripslashes($_POST["message"]));
}
// --- test de la validité des champs saisis ---
if (empty($_POST["email_expediteur"])) {
// il manque l'email de l'expéditeur
$erreur="Saisissez votre adresse email...";
}
elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["email_expediteur"])){
// l'adresse e-mail n'est pas valide
$erreur="Votre adresse e-mail n'est pas valide...";
}
elseif (empty($_POST["message"])) {
// le message est vide
$erreur="Saisissez un message...";
}
else {
// --- tous les champs sont correctement remplis: on pourra envoyer le mail ---
$etat="ok";
}
}
else {
// --- le formulaire n'a pas été soumis ---
$etat="attente";
}
// === fin de traitement des données du formulaire =======================================================
?>
<h2>Contacter le webmaster</h2>
<?php
if ($etat!="ok"){// le formulaire n'a pas été soumis, ou soumis avec une erreur
if ($etat=="erreur"){
//le formulaire a été soumis avec une erreur
echo "<p><strong>".$erreur."</strong></p>\n";
// afficher le message d'erreur
}
?>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>?page=test">
<p><label for="email_expediteur">Votre adresse e-mail (obligatoire):</label><br />
<input type="text" size="40" name="email_expediteur" id="email_expediteur" value="<?php
if (!empty($_POST["email_expediteur"])) {
// l'adresse email de l'expéditeur a été saisie: la réafficher
echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="titre">Titre de message (facultatif):</label><br />
<input type="text" size="40" name="titre" id="titre" value="<?php
if (!empty($_POST["titre"])) {
// le titre du message a été saisi: le réafficher
echo htmlspecialchars($_POST["titre"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="message">Message (obligatoire):</label><br />
<textarea name="message" id="message" cols="40" rows="5"><?php
if (isset($_POST["message"])) {
// le message a été saisi: le réafficher
echo htmlspecialchars($_POST["message"],ENT_QUOTES);
}
?></textarea>
</p>
<p><input type="submit" name="envoyer" value="Envoyer" />
</p>
</form>
<?php
}
else {
// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "MIME-Version: 1.0";
if (@mail($email_webmaster,$_POST["titre"],$_POST["message"],$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"" . $_SERVER["PHP_SELF"] . "?page=test\">Envoyer un autre message...</a>\n";
}
else {
// erreur lors de l'envoi du mail
echo "Un problème s'est produit lors de l'envoi du message.\n";
echo "<a href=\"" . $_SERVER["PHP_SELF"] . "?page=test\">Envoyer un autre message...</a>\n";
}
}
?>[/php]
Ou mon "ancien" :
[php]<h2>Contacter yan.k</h2>
<?php
if($_POST)
{
//Email de la personne qui reçoit l'email
$destinataire = "
[email protected]";
if(empty($_POST['nom']) OR empty($_POST['email']) OR empty($_POST['titre']) OR empty($_POST['contenu']))
{
echo "<p style='color: red;'>Veuillez remplir tous les champs.</p>";
}
else
{
mail($destinataire, stripslashes($_POST['titre']), stripslashes($_POST['contenu']), "From: ".$_POST['email']."\nReply-To: ".$_POST['email']);
echo "<p style='color: #ffffff;'>Votre message a bien été envoyé.</p>";
}
}
?>
<form action='<?php echo $PHP_SELF; ?>?page=test' method='post'>
<fieldset>
<p>
<label for="nom">Votre nom : </label>
<span style="color: red;">*</span><br />
<input type='text' name='nom' size='20' maxlength="50" />
<br />
<label for="email">Votre mail : </label>
<span style="color: red;">*</span><br />
<input type='text' name='email' size='20' maxlength="50" />
<br />
<label for="email">Titre du mail : </label>
<span style="color: red;">*</span><br />
<input type='text' name='titre' size='20' maxlength="50" />
<br />
<label for="contenu">Contenu : </label>
<span style="color: red;">*</span><br />
<textarea name="contenu" cols="50" rows="5"></textarea><br />
<span style="color: red;">* : <label for="obligatoire">Informations obligatoire</label></span></p>
<p><input type="submit" value="Envoyer" /></p>
</fieldset>
</form>[/php]
Merçi :D