Probleme verification php
Bonjour je suis débutant en php et javas.
Je bloc sur la création d'un formulaire de contact en html avec traitement en php qui fait la demande de vérification à une page en java.
Seulement, la vérification java ne se fait jamais, je me trouve seulement avec la vérification en php de ma page traitement.
SVP, aidez moi à résoudre le problème parce que ça fait 3 semaine que je suis déçu et je vraiment fatigué de cherche sans rien touver.
voici les codes:
html (index.html):
<form class="formee" method="post" action="traitement.php" onSubmit="return validate.check(this)">
<fieldset>
<legend>Nous contacter </legend>
<div class="grid-4-12">
<label for="Raison">Raison </label>
<select name="Raison" id="Raison">
<option>Choisissez une</option>
<option>Invitation</option>
<option>Commentaire</option>
<option>Informations</option>
<option>Partenariat</option>
<option>Témoignage</option>
<option>Autre...</option>
</select>
</div>
<div class="grid-4-12">
<label for="Nom">Nom/Prénom <em class="formee-req">*</em></label>
<input name="Nom"type="text" id="Nom" />
</div>
<div class="grid-4-12">
<label label for="Email">E-mail <em class="formee-req">*</em></label>
<input name="Email" type="text" id="Email" />
</div>
<div class="grid-12-12">
<label for="Sujet">Sujet <em class="formee-req">*</em></label>
<input name="Sujet"type="text" id="Sujet"/>
</div>
<div class="grid-12-12 clear">
<label for="Message">Message <em class="formee-req">*</em></label>
<textarea name="Message" id="Message" cols="30" rows="10"></textarea>
</div>
<div class="grid-12-12">
<input class="right" name="envoi" type="submit" title="Envoi" value="Envoi" id="Envoi"/>
</div>
</fieldset>
</form>
Php (traitement.php)
<?php include_once "entete.html"; ?> <b>! la page entete.html vas chercher la vérification en javascript </b>
<?php
if(isset($_POST['Email']) AND ($_POST['envoi'])) {
$message_error = '';
include 'config-formulaire.php';
if(!isset($_POST['Raison']) ||
!isset($_POST['Nom']) ||
!isset($_POST['Email']) ||
!isset($_POST['Sujet']) ||
!isset($_POST['Message'])
) {
$message_error .='Apparemment, vous avez un problème avec le formulaire<br />';
}
$votre_raison= strip_tags($_POST['Raison']);
$_SESSION['raison'] = $votre_raison;
$votre_nom = strip_tags($_POST['Nom']);
$_SESSION['votre_nom'] = $votre_nom;
$email_de = strip_tags($_POST['Email']);
$_SESSION['email_de'] = $email_de;
$votre_sujet = strip_tags($_POST['Sujet']);
$_SESSION['votre_sujet'] = $votre_sujet;
$votre_message = strip_tags( $_POST['Message']);
$_SESSION['votre_message'] = $votre_message;
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(preg_match($email_exp,$email_de)==0) {
$message_error .= 'Adresse e-mail invalide<br />';
}
if(strlen($votre_raison) < 1) {
$message_error .= 'Indiquez votre Raison<br />';
}
if(strlen($votre_nom) < 2) {
$message_error .= 'saisissez votre Nom/Prénom<br />';
}
if(strlen($votre_sujet) < 4) {
$message_error .= 'saisissez votre Sujet<br />';
}
if(strlen($votre_message) < 5) {
$message_error .= 'Votre message est invalide.<br />';
}
if(strlen($message_error) > 0) {
echo '
<div class="alerta"> <b>ERREUR DENVOI DU FORMULAIRE !</b><br /><br /> '.$message_error.'</div>
';
}
// Si tout vas bien on envoi le formulaire
if (strlen($message_error) == 0){
$message_email = "MESSAGE FORMULAIRE DE CONTACT VENANT DE VOTRE SITE-WEB. <br /><br />";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:");
return str_replace($bad,"",$string);
}
$votre_message= nl2br ($votre_message);
$message_email .= "Raison: ".clean_string($votre_raison)."<br />";
$message_email .= "Nom: ".clean_string($votre_nom)."<br />";
$message_email .= "Email: ".clean_string($email_de)."<br />";
$message_email .= "Sujet: ".clean_string($votre_sujet)."<br />";
$message_email .= "Message: ".clean_string($votre_message)."<br />";
$entete = 'From:'.$email_de."\r\n".
'Reply-To:'. $email_de. "\r\n".
'X-Mailer: PHP/' . phpversion().
'Return-Path:' .$email_de."\r\n".
'MIME-Version: 1.0' . "\r\n".
'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($envoi_a, $sujet, $message_email, $entete);
header("Location: $page_confirmation");
echo "
<script>location.replace('".$page_confirmation."')</script>
";
}
}
?>
Page entete (html):
<script type="text/javascript">
var RecaptchaOptions = {
lang : 'fr',
theme : 'white',
custom_translations : { instructions_visual : "Entrez les deux mots:" }
};
</script>
<script type="text/javascript" src="validation.js"></script>
<script type="text/javascript">
required.add('Raison','VALIDER','Raison');
required.add('Nom','VALIDER','Nom');
required.add('Sujet','VALIDER','Sujet');
required.add('Email','EMAIL','Email');
required.add('Message','VALIDER_EMAIL','Message');
</script>
Pages javascript (vérification java):
function has_id(id){try{var tmp=document.getElementById(id).value;}catch(e){return false;}
return true;}
function has_name(nm){try{var tmp=cfrm.nm.type;}catch(e){return false;}
return true;}
function $$(id){if(!has_id(id)&&!has_name(id)){alert("Le champ "+id+" VIDE!\n Validation Formulaire.");return false;}
if(has_id(id)){return document.getElementById(id).value;}else{return;}}
function $val(id){return document.getElementById(id);}
function trim(id){$val(id).value=$val(id).value.replace(/^\s+/,'').replace(/\s+$/,'');}
var required={field:[],add:function(name,type,mess){this.field[this.field.length]=[name,type,mess];},out:function(){return this.field;},clear:function(){this.field=[];}};var validate={check:function(cform){var error_message='Veuillez vérifié les erreurs suivantes:\n\n';var mess_part='';var to_focus='';var tmp=true;for(var i=0;i<required.field.length;i++){if(this.checkit(required.field[i][0],required.field[i][1],cform)){}else{error_message=error_message+'Veuillez integrer '+required.field[i][2]+'\n';if(has_id(required.field[i][0])&&to_focus.length===0){to_focus=required.field[i][0];}
tmp=false;}}
if(!tmp){alert(error_message);}
if(to_focus.length>0){document.getElementById(to_focus).focus();}
return tmp;},checkit:function(cvalue,ctype,cform){if(ctype=="VALIDER"){if(this.trim($$(cvalue)).length<1){return false;}else{return true;}}else if(ctype=="VALIDER_EMAIL"){exp=/^[a-zA-Z0-9._%-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;if($$(cvalue).match(exp)==null){return false;}else{return true;}}},trim:function(s){if(s.length>0){return s.replace(/^\s+/,'').replace(/\s+$/,'');}else{return s;}}};
Peut être qu'on peut faire plus simple,mais moi j'ai appris comme ça, alors s'il y a une autre méthode aidez-moi svp.
Je vous remercie pour votre aide
Je bloc sur la création d'un formulaire de contact en html avec traitement en php qui fait la demande de vérification à une page en java.
Seulement, la vérification java ne se fait jamais, je me trouve seulement avec la vérification en php de ma page traitement.
SVP, aidez moi à résoudre le problème parce que ça fait 3 semaine que je suis déçu et je vraiment fatigué de cherche sans rien touver.
voici les codes:
html (index.html):
<form class="formee" method="post" action="traitement.php" onSubmit="return validate.check(this)">
<fieldset>
<legend>Nous contacter </legend>
<div class="grid-4-12">
<label for="Raison">Raison </label>
<select name="Raison" id="Raison">
<option>Choisissez une</option>
<option>Invitation</option>
<option>Commentaire</option>
<option>Informations</option>
<option>Partenariat</option>
<option>Témoignage</option>
<option>Autre...</option>
</select>
</div>
<div class="grid-4-12">
<label for="Nom">Nom/Prénom <em class="formee-req">*</em></label>
<input name="Nom"type="text" id="Nom" />
</div>
<div class="grid-4-12">
<label label for="Email">E-mail <em class="formee-req">*</em></label>
<input name="Email" type="text" id="Email" />
</div>
<div class="grid-12-12">
<label for="Sujet">Sujet <em class="formee-req">*</em></label>
<input name="Sujet"type="text" id="Sujet"/>
</div>
<div class="grid-12-12 clear">
<label for="Message">Message <em class="formee-req">*</em></label>
<textarea name="Message" id="Message" cols="30" rows="10"></textarea>
</div>
<div class="grid-12-12">
<input class="right" name="envoi" type="submit" title="Envoi" value="Envoi" id="Envoi"/>
</div>
</fieldset>
</form>
Php (traitement.php)
<?php include_once "entete.html"; ?> <b>! la page entete.html vas chercher la vérification en javascript </b>
<?php
if(isset($_POST['Email']) AND ($_POST['envoi'])) {
$message_error = '';
include 'config-formulaire.php';
if(!isset($_POST['Raison']) ||
!isset($_POST['Nom']) ||
!isset($_POST['Email']) ||
!isset($_POST['Sujet']) ||
!isset($_POST['Message'])
) {
$message_error .='Apparemment, vous avez un problème avec le formulaire<br />';
}
$votre_raison= strip_tags($_POST['Raison']);
$_SESSION['raison'] = $votre_raison;
$votre_nom = strip_tags($_POST['Nom']);
$_SESSION['votre_nom'] = $votre_nom;
$email_de = strip_tags($_POST['Email']);
$_SESSION['email_de'] = $email_de;
$votre_sujet = strip_tags($_POST['Sujet']);
$_SESSION['votre_sujet'] = $votre_sujet;
$votre_message = strip_tags( $_POST['Message']);
$_SESSION['votre_message'] = $votre_message;
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(preg_match($email_exp,$email_de)==0) {
$message_error .= 'Adresse e-mail invalide<br />';
}
if(strlen($votre_raison) < 1) {
$message_error .= 'Indiquez votre Raison<br />';
}
if(strlen($votre_nom) < 2) {
$message_error .= 'saisissez votre Nom/Prénom<br />';
}
if(strlen($votre_sujet) < 4) {
$message_error .= 'saisissez votre Sujet<br />';
}
if(strlen($votre_message) < 5) {
$message_error .= 'Votre message est invalide.<br />';
}
if(strlen($message_error) > 0) {
echo '
<div class="alerta"> <b>ERREUR DENVOI DU FORMULAIRE !</b><br /><br /> '.$message_error.'</div>
';
}
// Si tout vas bien on envoi le formulaire
if (strlen($message_error) == 0){
$message_email = "MESSAGE FORMULAIRE DE CONTACT VENANT DE VOTRE SITE-WEB. <br /><br />";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:");
return str_replace($bad,"",$string);
}
$votre_message= nl2br ($votre_message);
$message_email .= "Raison: ".clean_string($votre_raison)."<br />";
$message_email .= "Nom: ".clean_string($votre_nom)."<br />";
$message_email .= "Email: ".clean_string($email_de)."<br />";
$message_email .= "Sujet: ".clean_string($votre_sujet)."<br />";
$message_email .= "Message: ".clean_string($votre_message)."<br />";
$entete = 'From:'.$email_de."\r\n".
'Reply-To:'. $email_de. "\r\n".
'X-Mailer: PHP/' . phpversion().
'Return-Path:' .$email_de."\r\n".
'MIME-Version: 1.0' . "\r\n".
'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($envoi_a, $sujet, $message_email, $entete);
header("Location: $page_confirmation");
echo "
<script>location.replace('".$page_confirmation."')</script>
";
}
}
?>
Page entete (html):
<script type="text/javascript">
var RecaptchaOptions = {
lang : 'fr',
theme : 'white',
custom_translations : { instructions_visual : "Entrez les deux mots:" }
};
</script>
<script type="text/javascript" src="validation.js"></script>
<script type="text/javascript">
required.add('Raison','VALIDER','Raison');
required.add('Nom','VALIDER','Nom');
required.add('Sujet','VALIDER','Sujet');
required.add('Email','EMAIL','Email');
required.add('Message','VALIDER_EMAIL','Message');
</script>
Pages javascript (vérification java):
function has_id(id){try{var tmp=document.getElementById(id).value;}catch(e){return false;}
return true;}
function has_name(nm){try{var tmp=cfrm.nm.type;}catch(e){return false;}
return true;}
function $$(id){if(!has_id(id)&&!has_name(id)){alert("Le champ "+id+" VIDE!\n Validation Formulaire.");return false;}
if(has_id(id)){return document.getElementById(id).value;}else{return;}}
function $val(id){return document.getElementById(id);}
function trim(id){$val(id).value=$val(id).value.replace(/^\s+/,'').replace(/\s+$/,'');}
var required={field:[],add:function(name,type,mess){this.field[this.field.length]=[name,type,mess];},out:function(){return this.field;},clear:function(){this.field=[];}};var validate={check:function(cform){var error_message='Veuillez vérifié les erreurs suivantes:\n\n';var mess_part='';var to_focus='';var tmp=true;for(var i=0;i<required.field.length;i++){if(this.checkit(required.field[i][0],required.field[i][1],cform)){}else{error_message=error_message+'Veuillez integrer '+required.field[i][2]+'\n';if(has_id(required.field[i][0])&&to_focus.length===0){to_focus=required.field[i][0];}
tmp=false;}}
if(!tmp){alert(error_message);}
if(to_focus.length>0){document.getElementById(to_focus).focus();}
return tmp;},checkit:function(cvalue,ctype,cform){if(ctype=="VALIDER"){if(this.trim($$(cvalue)).length<1){return false;}else{return true;}}else if(ctype=="VALIDER_EMAIL"){exp=/^[a-zA-Z0-9._%-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;if($$(cvalue).match(exp)==null){return false;}else{return true;}}},trim:function(s){if(s.length>0){return s.replace(/^\s+/,'').replace(/\s+$/,'');}else{return s;}}};
Peut être qu'on peut faire plus simple,mais moi j'ai appris comme ça, alors s'il y a une autre méthode aidez-moi svp.
Je vous remercie pour votre aide
1 réponse
-
ne pas confondre java et javascript ce n'est pas du tout le même langage:
<head> <script type="text/javascript"> function validation_formulaire(){ //Nom var champ_nom=document.getElementById('Nom'); if(champ_nom.value==""){ alert("vous devez saisir le nom "); champ_nom.focus(); //met le curseur dans le champ nom return false; //empeche l'envoi du formulaire } //Email var exp=new RegExp("^[\\w\\-]+(\\.[\\w\\-]+)*@[\\w\\-]+(\\.[\\w\\-]+)*\\.[\\w\\-]{2,}$", "i"); //regex mail var champ_email=document.getElementById('Email'); if(champ_email.value==""){ alert("vous devez saisir Email "); champ_email.focus(); //met le curseur dans le champ Email return false; //empeche l'envoi du formulaire }else if(!exp.test(champ_email.value){ alert("Format Email non valide"); champ_email.focus(); //met le curseur dans le champ Email return false; //empeche l'envoi du formulaire } ///// etc.. tu peux rajouter de lamême façon tous les champs obligatoires ici //// //si on est arrivé la c'est que tout est ok donc on autorise l'envoi du formulaire return true; } </script> </head> <body> <form class="formee" method="post" action="traitement.php" onSubmit="return validation_formulaire();"> <fieldset> <legend>Nous contacter </legend> <div class="grid-4-12"> <label for="Raison">Raison </label> <select name="Raison" id="Raison"> <option>Choisissez une</option> <option>Invitation</option> <option>Commentaire</option> <option>Informations</option> <option>Partenariat</option> <option>Témoignage</option> <option>Autre...</option> </select> </div> <div class="grid-4-12"> <label for="Nom">Nom/Prénom <em class="formee-req">*</em></label> <input name="Nom" type="text" id="Nom" /> </div> <div class="grid-4-12"> <label label for="Email">E-mail <em class="formee-req">*</em></label> <input name="Email" type="text" id="Email" /> </div> <div class="grid-12-12"> <label for="Sujet">Sujet <em class="formee-req">*</em></label> <input name="Sujet"type="text" id="Sujet"/> </div> <div class="grid-12-12 clear"> <label for="Message">Message <em class="formee-req">*</em></label> <textarea name="Message" id="Message" cols="30" rows="10"></textarea> </div> <div class="grid-12-12"> <input class="right" name="envoi" type="submit" title="Envoi" value="Envoi" id="Envoi"/> </div> </fieldset> </form> Php (traitement.php) <?php /// non il faut que la verif en javascript se fasse dans la même page que le formulaire donc pas après l'envoi include_once "entete.html"; ?> <b>! la page entete.html vas chercher la vérification en javascript </b>