Formulaire de contact

lilicrepes -  
cyril1982 Messages postés 110 Statut Membre -
Bonjour,

Je suis une vrai débutante, mon site est terminé il est déjà en ligne et je rencontre un problème le formulaire de contact ne marche pas.

est- ce qu'une âme charitable pourrait m'aider à comprendre l'erreur dans le script html ou php je planche dessus depuis une semaine et là je jette l'éponge

Script Html :

<h2 class="letter_spacing">Formulaire <span>de contact</span></h2>
<form id="contact.php" method="post" id="form">
<div>
<div class="wrapper">
<span>Votre nom:</span>
<input name="cf_name" class="input" >
</div>
<div class="wrapper">
<span>Votre email:</span>
<input name="cf_email" class="input" >
</div>
<div class="textarea_box">
<span>Votre message:</span>
<textarea name="cf_message" cols="1" rows="1"></textarea>
</div>
<a href="#" class="button1" onClick="document.getElementById('ContactForm').submit()">Envoyer</a>
<a href="#" class="button1" onClick="document.getElementById('ContactForm').reset()">Annuler</a>

script Php

<?php
$field_name = $_POST['cf_name'];
$field_email = $_POST['cf_email'];
$field_message = $_POST['cf_message'];

$mail_to = '***@***';
$subject = 'demande de renseignements '.$field_name;

$body_message = 'From: '.$field_name."\n";
$body_message .= 'E-mail: '.$field_email."\n";
$body_message .= 'Message: '.$field_message;

$headers = 'From: '.$field_email."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";

$mail_status = mail($mail_to, $subject, $body_message, $headers);

if ($mail_status) { ?>
<script language="javascript" type="text/javascript">
alert('Merci pour votre message, nous traitons votre demande dans les plus brefs délais.');
window.location = 'index.html';
</script>
<?php
}
else { ?>
<script language="javascript" type="text/javascript">
alert('Votre message n'a pas été envoyé merci de nous contacter à l'adresse ***@***');
window.location = 'index.html';
</script>
<?php
}
?>

Le site est en ligne lilicrepes.fr

Merci pour votre aide

Lili

7 réponses

  1. cyril1982 Messages postés 110 Statut Membre 12
     
    Bonjour,

    L'identifiant de ton formulaire est "form" alors que le bouton "valider" tente d'envoyer le formulaire "ContactForm". Il faut renommer ton formulaire :

    <form id="contact.php" method="post" id="ContactForm" name="ContactForm"> 
    0
  2. lilicrepes Messages postés 4 Statut Membre
     
    Salut Cyril

    Merci pour ton aide mais ça ne marche toujours pas
    As-tu une autre idée???

    Merci

    Lili
    0
  3. cyril1982 Messages postés 110 Statut Membre 12
     
    Lili,

    Tu peux également modifier la balise a, normalement il faut écrire onclick en minuscule :

    <a href="#" class="button1" onclick="document.getElementById('ContactForm').submit()">Envoyer</a> 
    


    Sinon il faudrait que tu vérifies s'il y a une erreur javascript qui se produit quand tu cliques sur "Envoyer".
    Pour voir cela, tu peux ouvrir la "console javascript" de ton navigateur (exemple pour google chrome : Tools > JavaScript console ).
    0
  4. lilicrepes Messages postés 4 Statut Membre
     
    Salut Cyril

    Bon j'ai modifié les majuscules rien 'y fait et je suis allée sur tes conseils dans la console et là effectivement il y a une erreur

    Propriété « zoom » inconnue. Déclaration abandonnée. cdswidLNKR-v14145349919b.css:21
    12:03:06,295 TypeError: document.getElementById(...) is null

    mais là je suis perdue si tu as une idée je suis preneuse car là je patauge

    Merci encore pour ton aide
    Lili
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lilicrepes Messages postés 4 Statut Membre
     
    Sur IE
    j'ai le message suivant
    :
    SCRIPT5007: Impossible d'obtenir la propriété « submit » d'une référence null ou non définie
    Fichier : Contacts.html, ligne : 71, colonne : 1
    soit :
    <a href="#" class="button1" onclick="document.getElementById('ContactForm').submit()">Envoyer</a>
    <a href="#" class="button1" onclick="document.getElementById('ContactForm').reset()">Annuler</a>

    Voili voilà ou j'en suis

    merci
    0
  7. cyril1982 Messages postés 110 Statut Membre 12
     
    Bonjour,

    Oups, je viens seulement de voir que la balise form a deux attributs "id" (La première devrait être "action"):
    <form action="contact.php" method="post" id="ContactForm" name="ContactForm">

    L'appel a getElementById devrait fonctionner maintenant :)
    0
  8. lilicrepes Messages postés 4 Statut Membre
     
    Merci Cyril

    Tu es mon sauveur.

    Bonne journée

    Lili

    Si tu es en région parisienne c'est avec plaisir que je t'offrirai une crêpe.

    Bonne journée
    0
    1. cyril1982 Messages postés 110 Statut Membre 12
       
      De rien :) C'est gentil pour la crêpe mais je n'habite pas en région parisienne.

      Bonne journée à toi aussi.
      0