Cc,
à chaque fois que je clique sur mon image(bt_envoyer.png) cela m'écrit : Vous devez d'abord envoyer le formulaire (ce qui correspond à "$message_erreur_formulaire" de ma page traitement formulaire.php)
voiçi mes deux pages php
ma page contact.php
<form id="contact" method="post" action="traitement_formulaire.php">
<div align="center">
<table width="400" border="0" cellspacing="0" cellpadding="8">
<tr>
<th width="84" align="right" scope="row">Nom</th>
<th width="2" scope="row"> </th>
<td width="255" align="left"><input type="text" id="nom" name="nom" tabindex="1" /></td>
</tr>
<tr>
<th align="right" scope="row"> <label for="prenom">Prénom</label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="prenom" name="prenom" tabindex="2" /></td>
</tr>
<tr>
<th align="right" scope="row"> <label for="telephone">Téléphone</label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="telephone" name="telephone" tabindex="3" /></td>
</tr>
<tr>
<th align="right" scope="row"><label for="email">Email</label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="email" name="email" tabindex="4" /></td>
</tr>
<tr>
<th align="right" scope="row"><label for="objet">Objet </label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="objet" name="objet" tabindex="5" /></td>
</tr>
<tr>
<th align="right" scope="row"> <label for="message">Envoyer </label></th>
<th scope="row"> </th>
<td align="left"><textarea id="message" name="message" tabindex="6" cols="26" rows="8"></textarea></td>
</tr>
<tr>
<th scope="row"> </th>
<th scope="row"> </th>
<td align="left"><input type="submit" name="envoi" value="Envoyer le formulaire !" /></td>
</tr>
<tr>
<th scope="row"> </th>
<th scope="row"> </th>
<td align="left"><input name="envoi" type="image" value="image" src="pix/bt_envoyer.png" /></td>
</tr>
</table>
<p> </p>
</form>
</div>
et ma page traitement_formulaire.php
<?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = '[email protected]';
// copie ? (envoie une copie au visiteur)
$copie = 'non'; // 'oui' ou 'non'
// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";
// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"contact.html\">envoyer le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";
/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/
// on teste si le formulaire a été soumis
if (!isset($_POST['envoi']))
{
// formulaire non envoyé
echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text
if (1 === get_magic_quotes_gpc())
{
$stripslashes = create_function('$txt', 'return stripslashes($txt);');
}
else
{
$stripslashes = create_function('$txt', 'return $txt;');
}
// magic quotes ?
$text = $stripslashes($text);
$text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
$text = nl2br($text);
return $text;
};
/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};
// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';
$telephone = (isset($_POST['telephone'])) ? Rec($_POST['telephone']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
if (($nom != '') && ($prenom != '') && ($telephone != '') && ($email != '') && ($objet != '') && ($message != ''))
{
// les 4 variables sont remplies, on génère puis envoie le mail
$headers = 'From: '.$nom.''.$prenom.''.$telephone.' <'.$email.'>' . "\r\n";
// envoyer une copie au visiteur ?
if ($copie == 'non')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};
// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);
// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p>'.$message_envoye.'</p>'."\n";
}
else
{
echo '<p>'.$message_non_envoye.'</p>'."\n";
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<p>'.$message_formulaire_invalide.' <a href="contact.php">Retour au formulaire</a></p>'."\n";
};
}; // fin du if (!isset($_POST['envoi']))
?>
MERCI D AVANCE POUR LES INFOS
Cc,
à chaque fois que je clique sur mon image(bt_envoyer.png) cela m'écrit : Vous devez d'abord envoyer le formulaire (ce qui correspond à "$message_erreur_formulaire" de ma page traitement formulaire.php)
voiçi mes deux pages php
ma page contact.php
[html]<form id="contact" method="post" action="traitement_formulaire.php">
<div align="center">
<table width="400" border="0" cellspacing="0" cellpadding="8">
<tr>
<th width="84" align="right" scope="row">Nom</th>
<th width="2" scope="row"> </th>
<td width="255" align="left"><input type="text" id="nom" name="nom" tabindex="1" /></td>
</tr>
<tr>
<th align="right" scope="row"> <label for="prenom">Prénom</label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="prenom" name="prenom" tabindex="2" /></td>
</tr>
<tr>
<th align="right" scope="row"> <label for="telephone">Téléphone</label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="telephone" name="telephone" tabindex="3" /></td>
</tr>
<tr>
<th align="right" scope="row"><label for="email">Email</label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="email" name="email" tabindex="4" /></td>
</tr>
<tr>
<th align="right" scope="row"><label for="objet">Objet </label></th>
<th scope="row"> </th>
<td align="left"><input type="text" id="objet" name="objet" tabindex="5" /></td>
</tr>
<tr>
<th align="right" scope="row"> <label for="message">Envoyer </label></th>
<th scope="row"> </th>
<td align="left"><textarea id="message" name="message" tabindex="6" cols="26" rows="8"></textarea></td>
</tr>
<tr>
<th scope="row"> </th>
<th scope="row"> </th>
<td align="left"><input type="submit" name="envoi" value="Envoyer le formulaire !" /></td>
</tr>
<tr>
<th scope="row"> </th>
<th scope="row"> </th>
<td align="left"><input name="envoi" type="image" value="image" src="pix/bt_envoyer.png" /></td>
</tr>
</table>
<p> </p>
</form>
</div>[/html]
et ma page traitement_formulaire.php
[php]<?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = '
[email protected]';
// copie ? (envoie une copie au visiteur)
$copie = 'non'; // 'oui' ou 'non'
// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";
// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"contact.html\">envoyer le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";
/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/
// on teste si le formulaire a été soumis
if (!isset($_POST['envoi']))
{
// formulaire non envoyé
echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text
if (1 === get_magic_quotes_gpc())
{
$stripslashes = create_function('$txt', 'return stripslashes($txt);');
}
else
{
$stripslashes = create_function('$txt', 'return $txt;');
}
// magic quotes ?
$text = $stripslashes($text);
$text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
$text = nl2br($text);
return $text;
};
/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};
// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';
$telephone = (isset($_POST['telephone'])) ? Rec($_POST['telephone']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
if (($nom != '') && ($prenom != '') && ($telephone != '') && ($email != '') && ($objet != '') && ($message != ''))
{
// les 4 variables sont remplies, on génère puis envoie le mail
$headers = 'From: '.$nom.''.$prenom.''.$telephone.' <'.$email.'>' . "\r\n";
// envoyer une copie au visiteur ?
if ($copie == 'non')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};
// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);
// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p>'.$message_envoye.'</p>'."\n";
}
else
{
echo '<p>'.$message_non_envoye.'</p>'."\n";
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<p>'.$message_formulaire_invalide.' <a href="contact.php">Retour au formulaire</a></p>'."\n";
};
}; // fin du if (!isset($_POST['envoi']))
?>[/php]
MERCI D AVANCE POUR LES INFOS