Auteur Sujet: erreur javascript difficile à détecter !  (Lu 1141 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne arsope

  • Débutant
  • *
  • Messages: 3
erreur javascript difficile à détecter !
« le: 06 janvier 2008 à 19:56:03 »
Bonjour à toutes et à tous,
je travail pour un site http://www.bib69.com. Tout marchait très bien depuis le déploiement, les utilisateurs se sont inscrit sans problème. Depuis quelques jours, les utilisateurs lointains n'arrivent plus à s'inscrire car lorsqu'ils cliquent sur "suite" il n'a ya aucune réaction de l'application or moi à mon niveau je ne trouve pas ce problème. Un utlisateur m'a fait savoir qu'il s'agissait d'une erreur javascript et que ça venait de :
document.INSC.matrimonial.value=="" dans le bouton "suite" de l'application.

Voilà une partie du code de l'application
<html>
<head>
<script language="JavaScript">
<!--

//Fonction d'affichage de la liste
function situation(a){

if(a==1){

str_champ='<select name="matrimonial" class="Select_S0">';
<? for ($i=0;$i<sizeof($situmat);$i++){?>
str_champ+='<option value="<?echo $situmat[$i];?>"><?echo $situmat[$i];?></option>';
<?}?>
str_champ+='</select>';

}else{

str_champ='<select name="matrimonial" class="Select_S0">';
<? for ($i=0;$i<sizeof($situmate);$i++){?>

<?
//if($HTTP_POST_VARS['matrimonial']==$situmate[$i])?>

str_champ+='<option value="<?echo $situmate[$i];?>"><?echo $situmate[$i];?></option>';
<?}?>
str_champ+='</select>';

}
td_contenu.innerHTML= str_champ;

}


//vérification de l'email
function verif(email){
var arobase = email.indexOf("@")
var point = email.lastIndexOf(".")
if((arobase < 3 )||(point +2 >email.length)||(point< arobase + 3 )) return false
return true
}

//Fonction de test et d'introduction des données dans le flux
function inscript_suite(){

//test Qui suis je

if((document.INSC.suis[0].checked==false && document.INSC.suis[1].checked==false)||(document.INSC.recherche[0].checked==false && document.INSC.recherche[1].checked==false)){

alert("Vous devez renseigner la rubrique Qui suis je Merci !") ;
return false
}else{
if(document.INSC.suis[0].checked==true){
var jesuis="UN HOMME";
}else if(document.INSC.suis[1].checked==true){
var jesuis="UNE FEMME";
}

if(document.INSC.recherche[0].checked==true){
var jecherche="UN HOMME";
}else if(document.INSC.recherche[1].checked==true){
var jecherche="UNE FEMME";
}

}

//Test Vos coordonnées
if((document.INSC.nom.value=="")||(document.INSC.prenom.value=="") || (document.INSC.adr1.value=="") || (document.INSC.mail.value=="")){

alert("Vous devez donner vos coordonnées Merci !");
return false
}else{
//Test de l'adresse email
var email=document.INSC.mail.value;

if(!verif(email)){

alert("Adresse Email Invalide !");
document.INSC.mail.focus();
return false
}
//Test la longueur du nom
var lenom = document.INSC.nom.value;

if(lenom.length<=1){

alert("Nom Invalide !");
document.INSC.nom.focus();
return false
}
//Test sur la longueur du prénom
var leprenom = document.INSC.prenom.value;

if(leprenom.length<=1){

alert("Prenom Invalide !");
document.INSC.prenom.focus();
return false
}
if(document.INSC.adr2.value !=""){
var dresse1 = document.INSC.adr1.value;
var dresse2 = document.INSC.adr2.value;
var ladresse = dresse1+"-"+dresse2;
}
var letelef = document.INSC.telephone.value;
}
//Test Naissance et Résidence--
[color=red]if((document.INSC.jour.value=="")||(document.INSC.mois.value=="")||(document.INSC.annee.value=="")||(document.INSC.matrimonial.value=="")||(document.INSC.residence.value=="")||(document.INSC.nationalite.value=="")){

alert("Vous devez renseigner Toute la rubrique Naissance et Résidence Merci !");
return false

}[/color]
          //Test date de naissance Valide
var lejourj = document.INSC.jour.value;
var lemoism = document.INSC.mois.value;
var lanneea = document.INSC.annee.value;
var situafamil = document.INSC.matrimonial.value;
var nationalite = document.INSC.nationalite.value;
var residence = document.INSC.residence.value;

if((( lejourj > 28) && (lemoism=="02")) || ((lejourj > 30) && ((lemoism =="04") || (lemoism =="06") || (lemoism =="09") || (lemoism =="11")))){
alert("Date de naissance Invalide Merci !");
return false
}

var naissance = lejourj+"-"+lemoism+"-"+lanneea;

//Test sur la situation familiale
if(situafamil==""){

alert("Indiquez votre situation familiale. Merci !");
document.INSC.matrimonial.focus();
return false
}

if(nationalite==""){

alert("Indiquez votre nationalité. Merci !");
document.INSC.nationalite.focus();
return false
}

if(residence==""){

alert("Indiquez votre résidence. Merci !");
document.INSC.residence.focus();
return false
}
//Test sur l'annonce
if(document.INSC.annonce.value==""){

alert("Votre annonce est déterminante pour une rencontre merci !");
document.INSC.annonce.focus();
return false

}else if(document.INSC.annonce.value.indexOf("@")>=0){

alert("Vous ne devez pas transmettre une adresse E-mail. Merci !");
document.INSC.annonce.focus();
return false
}else{
var monannonce = document.INSC.annonce.value;

Ltab=monannonce.split(" ");
var Ltab_ltest=new Array('sexe','sexe,','sexe.','sexes','sex','sex,','sex.','pornographie','pornographie,','pornographie.','pornographies','pornographie!','pornographie?','pornographique','pornographiques','pornographique,');

if(Ltab.length >0){
for(i=0;i<Ltab.length;i++){
if(Ltab[i].length >26){
alert("Vous avez un mot incorrect dans votre annonce. Veuillez le corriger SVP. Merci !");
document.INSC.annonce.focus();
return false
}else{

//Test
for(j=0;j<Ltab_ltest.length;j++){

if(Ltab_ltest[j]==Ltab[i]){

alert("Vous avez un mot qui peut choquer dans votre annonce. Veuillez le retirer SVP. Merci !");
document.INSC.annonce.focus();
return false

}
}
}
}
}

}



document.INSC.submit();

}
//-->
</script>
</head>
<body>
<form method="post" action="inscription2.php" name="INSC" id="INSC">
<tr><td colspan="2"><span class="text0">JE SUIS</span></td></tr>
<tr><td >UN HOMME</td><td align="center"><input type="radio" name="suis" value="UN HOMME" onClick="situation(1);"></td></tr>
<tr><td >UNE FEMME</td><td align="center"><input type="radio" name="suis" value="UNE FEMME" onClick="situation(2);"></td></tr>
[color=red]<tr><td>S.FAMILIALE</td><td align="center" id="td_contenu" ><select name="matrimonial" class="Select_S0" ><option value=""></option></select></td></tr>[/color]
<tr ><td colspan="2" align="center"><input type="button" name="SUITE" style=background-color="#FFCC00"  class="CHAMP_R" value="SUITE" onClick="inscript_suite();"></td></tr>
</form>
</body>
</html>

J'ai essayé autant que j'ai pu je ne comprends pas pourquoi l'inscription marche chez moi et ça ne marche pas chez les clients ?
Je vous remercie d'avance de votre aide et vous souhaite très bonne année 2008.
En fait j'aimerai aussi savoir si le code javascript est dépendant des tag <meta > des pages html ?
:huh: