Bonjour à tous,
Je post ici afin d'avoir un avis sur l'implémentation de mon pot de miel à mon formulaire contact. N'ayant aucune notion de développement j'ai simplement essayé d’appliquer les instructions glanées de ci de là.
coté html:
Coté css:
et enfin le php:
En gros, si le champs phone (masqué) est remplit, alors l'envoi de l'e-mail ne se fait pas.
Merci d'avance .
Modifié par westman (22 Oct 2022 - 13:29)
Je post ici afin d'avoir un avis sur l'implémentation de mon pot de miel à mon formulaire contact. N'ayant aucune notion de développement j'ai simplement essayé d’appliquer les instructions glanées de ci de là.
coté html:
<form method="post" id="form_contact" action="">
<?php
if(isset($msg)){
echo $msg;
}
?>
<div>
<label class="label_email" for="email">E-MAIL*</label>
<input style="" name="email" type="email" value="<?php if(isset($_POST['email'])){echo $_POST['email'];} ?>" required/>
</div>
<div id="phone">
<label class="label_phone" for="phone">PHONE</label>
<input name="phone" type="text" autocomplete="off" value="<?php if(isset($_POST['phone'])){echo $_POST['phone'];}?>"/>
</div>
<div>
<label class="label_subject" for="subject">SUBJECT</label>
<input name="subject" type="text" value="<?php if(isset($_POST['subject'])){echo $_POST['subject'];}?>"/>
</div>
<div>
<textarea role="textbox" name="message" placeholder="Message*..." minlength="21" <?php if(isset($_POST['message'])){echo $_POST['message'];} ?> required></textarea>
</div>
<p style="text-align:left;margin-top:2pt;color:red">* required</p>
<div id="conditions">
<label id="main">  By checking this box, you accept all the terms and conditions.
<input type="checkbox" name="checkbox" value="<?php if(isset($_POST['checkbox'])){echo $_POST['checkbox'];}?>"/>
<span class="accept"></span>
</label>
</div>
<div class="button">
<button class="button-design" name="send" type="submit">SUBMIT !</button>
</div>
</form>
Coté css:
#phone{
display:none;
}
et enfin le php:
<?php
if(isset($_POST['send'])){
if (isset($_POST["phone"])) {
die();
}else{
if(empty($_POST['email'])){
echo '<script>alert("empty field!")</script>';
}else{
if(!preg_match("#^[a-z0-9_-]+((\.[a-z0-9_-]+){1,})?@[a-z0-9_-]+((\.[a-z0-9_-]+){1,})?\.[a-z]{2,}$#i",$_POST['email'])){
echo '<script>alert("incorrect email address!")</script>';
}else{
if(empty($_POST['message'])){
echo '<script>alert("empty field!")</script>';
}else{
if(isset($_POST['checkbox'])){
if(!empty($_POST['email']) AND !empty($_POST['subject']) AND !empty($_POST['message'])){
$header="MIME-Version: 1.0\r\n";
$header.='From:"xxx.com"<xxx@xxx.com>'."\n";
$header.='Content-Type:text/html; charset="uft-8"'."\n";
$header.='Content-Transfer-Encoding: 8bit';
$message='
<html>
<body>
<div align="left">
<u style="color:#fdb5c5">SENDER EMAIL:</u>'.$_POST['email'].'<br />
<u style="color:#fdb5c5">PHONE:</u>'.$_POST['phone'].'<br />
<u style="color:#fdb5c5">SUBJECT:</u>'.$_POST['subject'].'<br />
<u style="color:#fdb5c5">CGU:</u> ACCEPTÉES<br />
<br />
'.nl2br($_POST['message']).'
</div>
</body>
</html>
';
mail("xxx@xxx.com", "CONTACT - xxx.com", $message, $header);
mail("xxx@xxx.com", "CONTACT - xxx.com", $message, $header);
$msg='<p id="msg-sent">Your message has been sent!</p>';
}else{
$msg='<p style="color:red;margin-top:1rem;">An error has occured, please try again.</p>';
}
}else{
echo '<script>alert("You have to accept the conditions")</script>';
}
}
}
}
}
}
?>
En gros, si le champs phone (masqué) est remplit, alors l'envoi de l'e-mail ne se fait pas.
Merci d'avance .
Modifié par westman (22 Oct 2022 - 13:29)