Adapté captcha au formulaire de contact
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
j'arrive pas à fusioné le système de captchat au formulaire de contact.
Formulaire Contact ou je veut mettre le captcha :
Cordialement Stéphane
j'arrive pas à fusioné le système de captchat au formulaire de contact.
<?php
session_start();
//On verifie si le formulaire a ete valide
if(isset($_POST['nom'], $_POST['captcha'], $_SESSION['captcha']))
{
//On compare le code entre par lutilisateur avec celui de limage(qui avait ete stoque dans les sessions)
if(strtolower($_POST['captcha'])==strtolower($_SESSION['captcha']))
{
unset($_SESSION['captcha']);
echo '<strong style="color:#00bb00;">Le code que vous avez entré est le bon.</strong>';
$form = false;
//Ici, vous pouvez envoyer les donnes du formulaire
}
else
{
echo '<strong style="color:#bb0000;">Le code que vous avez entré est mauvais, veuillez réessayer.</strong>';
$form = true;
}
}
else
{
$form = true;
}
//Si $form vaut true, le formulaire sera affiche
if($form)
{
?>
<form action="formulaire.php" method="post">
Votre nom:<input type="text" name="nom" value="<?php if(isset($_POST['nom'])){echo htmlentities($_POST['nom']);} ?>" /><br />
Veuillez recopier le code cidessous:<input type="text" name="captcha" /><br />
<img src="captcha.php" alt="CAPTCHA" /><br />
<input type="submit" value="Envoyer" />
</form>
<?php
}
?>
Formulaire Contact ou je veut mettre le captcha :
<?php
if(isset($_POST['email']) and isset($_POST['sujet']) and isset($_POST['message']))
{
$destinataire = 'votre_email@example.com';
$email = htmlentities($_POST['email']);
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',str_replace('&','&',$email)))
{
$sujet = 'Contact: '.stripslashes($_POST['sujet']);
$message = stripslashes($_POST['message']);
$headers = "From: <".$email.">\n";
$headers .= "Reply-To: ".$email."\n";
$headers .= "Content-Type: text/plain; charset=\"iso-8859-1\"";
if(mail($destinataire,$sujet,$message,$headers))
{
echo "<strong>Votre message a bien été envoyé.</strong>";
}
else
{
echo "<strong style=\"color:#ff0000;\">Une erreur c'est produite lors de l'envois du message.</strong>";
}
}
else
{
echo "<strong style=\"color:#ff0000;\">L'email que vous avez entré est invalide.</strong>";
}
}
else
{
?>
<form action="" method="post">
<fieldset>
<legend>Formulaire de contact</legend>
<label for="email" style="display:inline-block;width:100px;"><strong>Votre Email:</strong></label> <input type="text" name="email" id="email" /><br />
<label for="sujet" style="display:inline-block;width:100px;"><strong>Sujet:</strong></label> <input type="text" name="sujet" id="sujet" /><br />
<label for="message"><strong>Message:</strong></label><br />
<textarea cols="70" rows="4" name="message" id="message"></textarea><br />
<input type="submit" value="Envoyer" />
</fieldset>
</form>
<?php
}
?>
Cordialement Stéphane
A voir également:
- Adapté captcha au formulaire de contact
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Formulaire de contact le bon coin introuvable ✓ - Forum Vos droits sur internet
- Captcha invalide ✓ - Forum Mozilla Firefox
3 réponses
Bonsoir Siluni,
en faite je teste d'Adapté le captcha au formulaire se qui n'est pas le cas dans mes deux code
1er = Captcha et
2eme = formulaire
donc 2 code différent a mettre en 1 seule code :)
les deux codes séparer fonctionne mais j'arrive pas à les mettre dans le même code :)
Cordialement Stéphane
en faite je teste d'Adapté le captcha au formulaire se qui n'est pas le cas dans mes deux code
1er = Captcha et
2eme = formulaire
donc 2 code différent a mettre en 1 seule code :)
les deux codes séparer fonctionne mais j'arrive pas à les mettre dans le même code :)
Cordialement Stéphane
Bonjour all
j'ai réussi voila la solution
Cordialement Stéphane
j'ai réussi voila la solution
<?php
//On verifie si le formulaire a ete valide
if(isset($_POST['psd'], $_POST['email'], $_POST['sujet'], $_POST['message'], $_POST['captcha'], $_SESSION['captcha']))
{
//On compare le code entre par lutilisateur avec celui de limage(qui avait ete stoque dans les sessions)
if(strtolower($_POST['captcha'])==strtolower($_SESSION['captcha']))
{
unset($_SESSION['captcha']);
echo '<b style="color:#00bb00;">Le code que vous avez entré est le bon.</b><br/>';
$form = false;
//Ici, vous pouvez envoyer les donnes du formulaire
}
else
{
echo '<b style="color:#bb0000;">Le code que vous avez entré est mauvais, veuillez réessayer.</b><br/>';
$form = true;
}
}
else
{
$form = true;
}
//Si $form vaut true, le formulaire sera affiche
if($form)
{
if(empty($psd) OR empty($email) OR empty($sujet) OR empty($_POST['message']) OR empty($_SESSION['captcha']))
{
echo '<b style="color:#00bb00;">Aucun champ ne peut rester vide.</b>';
}
}
else
{
$destinataire = 'votremail@live.fr';
$psd = stripslashes($_POST['psd']);
$email = stripslashes($_POST['email']);
$sujet = "Le sujet : ";
$sujet .= stripslashes($_POST['sujet']);
$form = "Pseudo : $psd \r\n";
$form .= "Email : $email \r\n";
$form .= "$sujet \r\n\n";
$form .= "---Message--- \r\n\n".stripslashes($_POST['message'])."\r\n\n";
$form .= "---Contact information--- \r\n\n";
$form .= "Son IP : ".$_SERVER["REMOTE_ADDR"]."\r\n";
$form .= "Page : ".$_SERVER["HTTP_REFERER"];
if (mail($destinataire , $sujet, $form,"From: $email\r\nReply-To: $email\r\nReturn-Path: $email\r\n")){
echo "<p align='center'><b>Bonjour ! </p><br/>
<p>Votre message a bien été envoyé.</p><br/>
<p>Nous vous remercions vivement de l'intérêt que vous portez à notre site de <strong>rencontre gratuit</strong>.</p><br/>
<p>Merci de votre participation et à bientôt sur le <strong>chat</strong>.</p>
<p>L'équipe Tchat-Fusion</p><br/><br/>
<p align='right'><a href='index.php'>Page Accueil</a> </p>";
}else{
echo "Une erreur est survenue lors de l'envoi de votre message ! <br/>Veuillez recommencer ou signaler ce probleme aux admins de Tchat-Fusion. <br/>Nos excuses pour le désagrément. <br/><br/>L'équipe de Tchat-fusion";
}
}
?>
Cordialement Stéphane