Bonjour ![]()
Comme l'indique mon titre, je me trouve dans une impasse car mon formulaire de contact ( html, php ) ne fonctionne pas et je ne trouve pas pourquoi il ne fonctionne pas ( j'ai essayé de l'héberger sur un serveur web autre que le mien créée avec wamp, même chose )
Je vous laisse ici le code html et le code php qui valide l'envoie du formulaire .
Code html : <section id="contact">
<div class="container">
<div class="row">
<div class="col-lg-12 text-center">
<h2>Contactez Nous</h2>
</div>
</div>
<div class="row">
<div class="col-lg-8 col-lg-offset-2">
<!-- To configure the contact form email address, go to mail/contact_me.php and update the email address in the PHP file on line 19. -->
<!-- The form should work on most web servers, but if the form is not working you may need to configure your web server differently. -->
<form name="sentMessage" id="contactForm" novalidate>
<div class="row control-group">
<div class="form-group col-xs-12 floating-label-form-group controls">
<label>Nom</label>
<input type="text" class="form-control" placeholder="Nom" id="name" required data-validation-required-message="Entrez votre nom.">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="row control-group">
<div class="form-group col-xs-12 floating-label-form-group controls">
<label>Adresse Email</label>
<input type="email" class="form-control" placeholder="Adresse Email" id="email" required data-validation-required-message="Entrez votre adresse Email.">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="row control-group">
<div class="form-group col-xs-12 floating-label-form-group controls">
<label>Numéro de Téléphone</label>
<input type="tel" class="form-control" placeholder="Téléphone" id="phone" required data-validation-required-message="Entrez votre numéro de téléphone.">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="row control-group">
<div class="form-group col-xs-12 floating-label-form-group controls">
<label>Message</label>
<textarea rows="5" class="form-control" placeholder="Message" id="message" required data-validation-required-message="Entrez votre méssage."></textarea>
<p class="help-block text-danger"></p>
</div>
</div>
<br>
<div id="success"></div>
<div class="row">
<div class="form-group col-xs-12">
<button type="submit" class="btn btn-success btn-lg">Envoyer</button>
</div>
</div>
</form>
</div>
</div>
</div>
</section>
et le php ! <?php
// Check for empty fields
if(empty($_POST['name']) ||
empty($_POST['email']) ||
empty($_POST['phone']) ||
empty($_POST['message']) ||
!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
{
echo "No arguments Provided!";
return false;
}
$name = $_POST['name'];
$email_address = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
// Create the email and send the message
$to = 'martin.fabre@hotmail.fr'; // Add your email address inbetween the '' replacing yourname@yourdomain.com - This is where the form will send a message to.
$email_subject = "Formulaire de contact: $name";
$email_body = "Vous venez de recevoir un mail de votre site web.\n\n"."Voilà les détails:\n\nNom: $name\n\nEmail: $email_address\n\nTél: $phone\n\nMessage:\n$message";
$headers = "De: noreply@yourdomain.com\n"; // This is the email address the generated message will be from. We recommend using something like noreply@yourdomain.com.
$headers .= "Reply-To: $email_address";
mail($to,$email_subject,$email_body,$headers);
return true;
?>
Merci d'avance de prendre le temps de m'aider
Sachant que j'ai vérifié dans mes spams/indésirables.
Cordialement.
J'ai pas été plus loin que
<form name="sentMessage" id="contactForm" novalidate>Pas de method, pas d'action, j'suppose que ton problème commence ici
Le 01 mars 2016 à 11:12:20 yes-man a écrit :
J'ai pas été plus loin que<form name="sentMessage" id="contactForm" novalidate>Pas de method, pas d'action, j'suppose que ton problème commence ici
Même chose en rajoutant method="post" action="contact_me.php"
Après avoir donné un name="envoyer" à ton bouton submit ->
if(isset($_POST['envoyer']))
{
echo "form envoyé";
}Faut revoir les bases d'un formulaire là, suivre un tuto sans survoler ou c/c bêtement, c'est pas bien compliqué un formulaire de contact..
Je vais creuser encore, merci quand même ![]()
Salut Martin ça va ?
Je te file une copie de mon code.
HTML / index.html
<form class="form-horizontal" role="form" id="formulaire" action="script.php" method="get">
<div class="form-group">
<label for="nom" class="col-sm-2 control-label">Nom</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="nom" id="nom" placeholder="Nom" >
</div>
</div>
<div class="form-group">
<label for="prenom" class="col-sm-2 control-label">Prénom</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="prenom" id="prenom" placeholder="Prénom" >
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control" name="inputEmail" id="inputEmail" placeholder="Email">
</div>
</div>
<div class="form-group">
<label for="sujet" class="col-sm-2 control-label">Sujet</label>
<div class="col-sm-10">
<select class="form-control" rows="3" name="sujet" id="sujet">
<option value="">Choisissez un sujet</option>
<option value="abonnement">Abonnement</option>
<option value="sav">SAV</option>
<option value="autres">autres</option>
</select>
</div>
</div>
<div class="form-group" id="maTextArea">
<label for="remarques" class="col-sm-2 control-label">Remarques</label>
<div class="col-sm-10">
<textarea class="form-control" rows="3" name="remarques" id="remarques"></textarea>
</div>
</div>
<div class="form-group" id="bouton">
<div class="col-sm-offset-2 col-sm-10">
<!--<a href="#" id="btnEnvoi" class="btn btn-default">Envoyez!</a>-->
<button type="button" class="btn btn-default" id="btnEnvoi">Envoyez!</button>
</div>
</div>
</form>
PHP / script.php
<?php
$nom=isset($_REQUEST["nom"])?$_REQUEST["nom"]:"";
$prenom=isset($_REQUEST["prenom"])?$_REQUEST["prenom"]:"";
$sujet=isset($_REQUEST["sujet"])?$_REQUEST["sujet"]:"";
$remarques=isset($_REQUEST["remarques"])?$_REQUEST["remarques"]:"";
$email=isset($_REQUEST["inputIEmail"])?$_REQUEST["inputIEmail"]:"";
$message='<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Un Email Responsive</title>
</head>
<body style="margin:0; padding:0; background-color:#ccc;">
<table width="100%" cellpadding="0" cellspacing="0";><!-- 1er tableau -->
<tr>
<td>
<table class="content" align="center" cellpadding="0" cellspacing="0" width="799" background-color="#f6f8f1";><!-- 2eme tableau -->
<tr>
<td>
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td width="431">
<img src="..." width="431" height="152" alt="img_G" />
</td>
<td width="368">
<img src="..." width="368" height="152" alt="img_D" />
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td style="padding: 30px 30px 30px 30px;">
<p style="marginBottom: 20px;">
'.$prenom.' '.$nom.'
</p>
<p style="marginBottom: 20px;">
votre mail : '.$email.'
</p>
<p>
votre inscription a été pris en compte
</p>
<p>votre demande concerne :
<strong>
'.$sujet.'
</strong>
</p>
<p>vos remarques :
<strong>
'.$remarques.'
</strong>
</p>
<p style="margin-bottom:30px;">
bien à vous
</p>
<p>Prénomdexpéditeur Nomdexpéditeur</p>
</td>
</tr>
<tr>
<td width="799">
<img src="..." width="799" height="45" alt="img_B" />
</td>
</tr>
</table><!-- fin 2eme tableau -->
</td>
</tr>
</table><!-- fin 1er tableau -->
</body>
</html>';
$destinataire = 'tonMail@gmail.com' . ', '; // notez la virgule
$sujetMail = $sujet;
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8'. "\r\n";
$headers .= 'From: '.$nom.' '.$prenom.' <'.$email.'>'. "\r\n";
mail($destinataire, $sujetMail, $message, $headers);
echo $message;
include_once("connect.php");
include_once("fonctions_db.php");
creerConnection();
$maDate=date("y-m-d");
insererMembre($prenom, $nom, $email, $sujet, $remarques, $maDate);
jQuery (optionel)
function verifierInputText(){
//$("input[type='text']")
$("input:text").focusin(function(event) {
$(this).css("background","#ccc");
});
$("input:text").focusout(function(event) {
$(this).css("background","white");
if($(this).val()==""){
$(this).parents("div.form-group").addClass('has-error').removeClass('has-success');
}else{
$(this).parents("div.form-group").addClass('has-success').removeClass('has-error');
}
});
}
function verifierSelect(){
$("select").change(function(event) {
//if($(this).val()!=""){}
if($(this).children("option:selected").val()!=""){
console.log("case cochée");
$(this).parents("div.form-group").addClass('has-success').removeClass('has-error');
}else{
console.log("case décochée");
$(this).parents("div.form-group").addClass('has-error').removeClass('has-success');
}
console.log($(this).children("option:selected").html());
});
}
function verifierEmail(){
$("input[type='email']").focusout(function(event) {
var adresseEmail=$(this).val();
var monExpressionReguliere=/^[a-zA-Z0-9._-]{1,}@[a-zA-Z0-9_-]{1,}\.[a-zA-Z]{2,}$/;
//var monExpressionReguliere=/^[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+\.[a-zA-Z]{2,}$/;
if(monExpressionReguliere.test(adresseEmail)){
$(this).parents("div.form-group").addClass('has-success').removeClass('has-error');
}else{
$(this).parents("div.form-group").addClass('has-error').removeClass('has-success');
}
});
}
function verifierTelephone(){
$("#inputTel").focusout(function(event) {
var telephone=$(this).val();
var monExpressionReguliere=/^\+32-?[0-9]{1,3}-?[0-9]{2,3}-?[0-9]{2}-?[0-9]{2}$/;
if(monExpressionReguliere.test(telephone)){
$(this).parents("div.form-group").addClass('has-success').removeClass('has-error');
}else{
$(this).parents("div.form-group").addClass('has-error').removeClass('has-success');
}
});
}
function verifierFormulaire(){
$("#monMessage").empty();
var erreur=false;
$("form#formulaire>.form-group").not("#bouton,#maTextArea").each(function(index, el) {
console.log($(el).html());
if(!$(el).hasClass('has-success')){
var contenuLabel=$(el).find("label").text();
$("#monMessage").append("<p>"+contenuLabel+" est invalide</p>");
erreur=true;
}
});
if(erreur){
$("#monMessage").addClass('alert').addClass('alert-danger');
}else{
$("#monMessage.alert.alert-danger").removeClass('alert').removeClass('alert-danger');
$("#formulaire").submit();
}
}
Le 02 mars 2016 à 20:18:31 darkiron_web a écrit :
Salut Martin ça va ?
On se connaît ?
Merci Crow99 je vais tester ça ![]()
Martin Fabre.
Il y a ton nom dans une adresse mail.
xD effectivement, hyper constructif ton comm dis mois :p
@Martin ![]()
Tu devras changer 2-3 trucs comme l'expression régulière du téléphone. c'était pour un client Belge.
Et tu l'auras compris, c'est index.php et non pas .html.