Le bouton "submit" ne fonctionne pas !

Résolu/Fermé
Utilisateur anonyme - Modifié par Elevast le 27/02/2011 à 08:14
 Utilisateur anonyme - 27 févr. 2011 à 08:01
Bonjour.

J'essaie d'intégrer dans mon site web un formulaire de contact. Je l'avais déjà fait, mais là, j'ai beau testé et re-testé, le bouton "Valider" ne fonctionne pas.

> http://cluster1.easy-hebergement.net/

Voilà le code HTML/PHP :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> 
<head> 
<title></title>     
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<meta http-equiv="content-language" content="fr" /> 
<link href="contact.css" title="Défaut" rel="stylesheet" type="text/css" media="screen" /> 
 <script type="text/javascript" src="js/jquery-1.2.6.min.js"></script> 
 <script type="text/javascript" src="js/jquery-easing-1.3.pack.js"></script> 
 <script type="text/javascript" src="js/jquery-easing-compatibility.1.2.pack.js"></script> 
 <script type="text/javascript" src="js/coda-slider.1.1.1.pack.js"></script> 
 <script type="text/javascript" src="js/js.js"></script> 
  
 <!--SCRIPT FORMULAIRE --> 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
        <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js" type="text/javascript"></script> 
        <script src="jquery.formLabels1.0.js" type="text/javascript"></script> 
  <script type="text/javascript"> 
            $(function(){ 
                $.fn.formLabels(); 
                $("form").submit(function(){ 
                    var formVal = $("form").serialize(); 
                    parent.$("#default div.results").html(formVal); 
                    return false 
                }) 
            }); 
        </script> 
</head> 
<body>   
  
   <div id="conteneur"> 
<!-- *************************************** HEADER **************************************** -->   
            <div id="header">  
                 <!--<div id="header_haut"> 
                  <a href=""><img src="images/souscrire.png" width="100" height="17" alt="" /></a> 
     </div> --> 
    
      <ul id="menu_header"> 
                     <li><a href="index.html" title="">Accueil</a></li> 
                     <li><a href="#" title="">Solutions</a></li>  
                     <li><a href="#" title="">Références</a></li>  
                     <li id="ici"><a href="contact.php" title="">Contact</a></li>  
                 </ul>   
      
     <a id="twitter" href="***"></a> 
   </div> 

    <div id="contenu">   
    <div id="cadre">     
            <div class="cadre"> 
        
           <div id="cont" class="group">          
     
     <?php 

 $destinataire = '***'; 

 // copie ? (envoie une copie au visiteur) 
 $copie = 'non'; 

 // Action du formulaire (si la page a des paramètres dans l'URL) 
 $form_action = ''; 

 /* 
  * 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; 
 }; 

 $err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin 

 // si formulaire envoyé, on récupère tous les champs. Sinon, on initialise les variables. 
 $nom     = (isset($_POST['nom']))     ? Rec($_POST['nom'])     : ''; 
 $email   = (isset($_POST['email']))   ? Rec($_POST['email'])   : ''; 
 $objet   = (isset($_POST['objet']))   ? Rec($_POST['objet'])   : ''; 
 $message = (isset($_POST['message'])) ? Rec($_POST['message']) : ''; 

 if (isset($_POST['envoi'])) 
 { 
  // 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é 
  $err_formulaire = (IsEmail($email)) ? false : true; 

  if (($nom != '') && ($email != '') && ($objet != '') && ($message != '')) 
  { 
   // les 4 variables sont remplies, on génère puis envoie le mail 
   $headers = 'From: '.$nom.' <'.$email.'>' . "\r\n"; 

   // envoyer une copie au visiteur ? 
   if ($copie == 'oui') 
   { 
    $cible = $destinataire.','.$email; 
   } 
   else 
   { 
    $cible = $destinataire; 
   }; 

   // Remplacement de certains caractères spéciaux 
   $message = html_entity_decode($message); 
   $message = str_replace(''',"'",$message); 
   $message = str_replace(''',"'",$message); 
   $message = str_replace('<br>','',$message); 
   $message = str_replace('<br />','',$message); 

   // Envoi du mail 
   if (mail($cible, $objet, $message, $headers)) 
   { 
    echo '<p>Message envoyé avec succès.</p> 
<a href="index.html" <input type="submit" name="lien" value="Accueil" class="abutton" id="round"/></a>'."\n"; 
   } 
   else 
   { 
    echo '<p>L\'envoi du message a échoué. Veuillez réessayer.</p> 
<a href="contact.php" <input type="submit" name="lien" value="Contact" class="abutton" id="round" /></a>&nbsp 
<a href="index.html" <input type="submit" name="lien" value="Accueil" class="abutton" id="round" /></a>'."\n"; 
   }; 
  } 
  else 
  { 
   // une des 3 variables (ou plus) est vide ... 
   echo '<p>L\'envoi du message a échoué. Veuillez vérifier que tous les champs soient bien remplis et que l\'adresse mail indiquée soit valide.</p>'."\n"; 
   $err_formulaire = true; 
  }; 
 }; // fin du if (!isset($_POST['envoi'])) 

 if (($err_formulaire) || (!isset($_POST['envoi']))) 
 { 
    
  // afficher le formulaire 
  echo '<form method="post" action="'.$form_action.'">'."\n"; 
  echo '<h1 class="round">Contact</h1><br />'."\n"; 
  echo '  <p>'."\n"; 
  echo '   <div class="field"><input type="text" name="nom" title="Nom" id="email-input" value="'.stripslashes($nom).'" tabindex="1"/></div><hr /><br />'."\n"; 
  /*echo '   <input class="round" type="text" id="round" name="nom" value="'.stripslashes($nom).'" tabindex="1" /><br /><hr />'."\n";*/ 
  echo ' '."\n"; 
  echo '  '."\n"; 
  echo '   <div class="field"><input type="email" name="email" title="Mail" id="email-input" value="'.stripslashes($email).'" tabindex="2" /></div><hr /><br />'."\n"; 
  /*echo '   <input class="round" type="text" id="round" name="email" value="'.stripslashes($email).'" tabindex="2" /><br /><hr />'."\n";*/ 
  echo '  '."\n"; 
   

  echo '  '."\n"; 
  echo '   <div class="field"><input type="text" name="objet" title="Objet" id="email-input" value="'.stripslashes($objet).'" tabindex="3" /></div><hr /><br />'."\n"; 
 /* echo '   <input class="round" type="text" id="round" name="objet" value="'.stripslashes($objet).'" tabindex="3" /><br /><hr />'."\n";*/ 
  echo '  '."\n"; 
  echo '  '."\n"; 
  echo '   <div class="field"><textarea name="message" title="Message" id="message-textarea" tabindex="4" cols="8" rows="5">'.stripslashes($message).'</textarea></div>'."\n"; 
   /*echo '   <textarea class="round id="round" name="message" tabindex="4" cols="8" rows="5">'.stripslashes($message).'</textarea>'."\n";*/ 
  echo '  </p>'."\n"; 

  echo ' <input type="submit" name="envoi" value="Valider"/>'."\n"; 
  echo '</form>'."\n"; 
 }; 
  
  
?> 
     </div> 
    
   </div> 
    
           <div class="clear"></div> 
    </div>  
<br />    

 </div> 






Donc, le bouton "Submit" (ou valider) ne fonctionne pas, je clique, et il ne se passe rien.

Merci d'avance,
Elevast.

3 réponses

$("form").submit(function(){
var formVal = $("form").serialize();
parent.$("#default div.results").html(formVal);
return false
})

"return false" invalide la validation du formulaire.
2
bé c normal ,regarde l'action de formulaire:

ca dis <form method="post" action="'.$form_action.'">

donc , tu dis au formulaire d'utilisé pour action , la variable $form_action

moi je veus bien , mais cette variable = que dalle

faudrais peu etre y relier le traitement de mail

éssai ca :
<form method="post" action="contact.php">

__
_/ \_____________________
\__/ - diablobros was here -
1
Utilisateur anonyme
27 févr. 2011 à 08:01
Bonjour.

@DiabloBros : j'ai remplacé <form method="post" action="'.$form_action.'"> par <form method="post" action="contact.php">, mais cela ne fonctionne toujours pas :(

@A.Nonymous : ah oui, effectivement. Merci beaucoup, ça marche :biz:

Merci encore à vous deux pour votre aide.

Cordialement,
Elevast.
1