begin process at 2012 05 29 15:25:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

Pb de validation d'un formualaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb de validation d'un formualaire

mercredi 16 avril 2008 à 22:20:46 | Pb de validation d'un formualaire

HovOne

Bonsoir
je souhaite valider ce formulaire html/php via un script en JS

[quote]
<?php session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>MP3 Island - Enregistrez vous !! </title>
        <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
        <link rel="stylesheet" href="styles-heet.css" type="text/css" />
        
        <script src="/mp3island/javascript/verif_champ.js" language="JavaScript" type="text/JavaScript"></script>
        
    </head>
    
    <body>

        <div class="top">
            <p align="left"><?php include("top.php"); ?> </p>
        </div>
        
        <center>
    <br>
    <br>
         <div id="formInscrip">
         <b>REMPLIR LE FORMULAIRE SVP</b>
         <div  id="formInscip1">
        <form action="#">
        <p><label for="userName">Votre nom :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="text" size="30" id="userName" class="reqd" /></label></p><br>
        <p><label for="lastName">Votre prenom :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="text" size="30" id="lastName" class="reqd" /></label></p><br>
        <p><label for="pseudoName">Votre pseudo :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" size="30" id="pseudoName" class="reqd" /></label></p><br>
        <p><label for="mail">Votre e-Mail : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" size="30" id="mail" class="reqd email" /></label></p><br>
        <p><label for="passwd1">Votre Mot de passe :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="password" id="passwd1" class="reqd"></label></p><br>
        <p><label for="passwd2">Retapez votre Mot de passe :&nbsp;&nbsp; <input type="password" id="passwd2" class="reqd passwd1"></label></p><br>
        <p><label for="dateNais">Votre date de naissance :

            <select id="months">
                <option value="0">01</option>
                <option value="1">02</option>
                <option value="2">03</option>
                <option value="3">04</option>
                <option value="4">05</option>
                <option value="5">06</option>
                <option value="6">07</option>
                <option value="7">08</option>
                <option value="8">09</option>
                <option value="9">10</option>
                <option value="10">11</option>
                <option value="11">12</option>
            </select>
            
            <select id="days">
                <option>01</option>
            </select>
            
            <select id="years">
                <option>2008</option>
                <option>2007</option>
                <option>2006</option>
                <option>2005</option>
                <option>2004</option>
                <option>2003</option>
                <option>2002</option>
                <option>2001</option>
                <option>2000</option>
                <option>1999</option>
                <option>1998</option>
                <option>1997</option>
                <option>1996</option>
                <option>1995</option>
                <option>1994</option>
                <option>1993</option>
                <option>1992</option>
                <option>1991</option>
                <option>1990</option>
                <option>1989</option>
                <option>1988</option>
                <option>1987</option>
                <option>1986</option>
                <option>1985</option>
                <option>1984</option>
                <option>1983</option>
                <option>1982</option>
                <option>1981</option>
                <option>1980</option>
                <option>1979</option>
                <option>1978</option>
                <option>1977</option>
                <option>1976</option>
                <option>1975</option>
                <option>1974</option>
                <option>1973</option>
                <option>1972</option>
                <option>1971</option>
                <option>1970</option>
                <option>1969</option>
                <option>1968</option>
                <option>1967</option>
                <option>1965</option>
                <option>1964</option>
                <option>1963</option>
                <option>1962</option>
                <option>1961</option>
                <option>1960</option>
                <option>1959</option>
                <option>1958</option>
                <option>1957</option>
                <option>1956</option>
                <option>1955</option>
                <option>1954</option>
                <option>1953</option>
                <option>1952</option>
                <option>1951</option>
                <option>1950</option>    
            </select></label></p>
            
        <br><br>
        
        <center><p><input type="submit" value="Soumettre"/>&nbsp;<input type="reset" value="Effacer"/></p></center>
        </form>
        </div>
        <h6>*Veuillez remplir tous les champs svp.</h6>
     </div>
    </center>    
            
        
               
     </body>
    
      
    
</html>
[/quote]

le script que j'ai écrit

[quote]
window.onload = initForms;
window.onload = initForm;

function initForm() {
    document.getElementById("months").selectedIndex = 0;
    document.getElementById("months").onchange = populateDays;
}

function populateDays() {
     var monthDays = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
     var monthStr = this.options[this.selectedIndex].value;
     if (monthStr != "") {
         var theMonth = parseInt(monthStr);
         document.getElementById("days").options.length = 0;
         for(var i=0; i<monthDays[theMonth]; i++) {
             document.getElementById("days").options[i] = new Option(i+1);
        }
    }
}


function initForms() {
    for (var i=0; i< document.forms.length; i++) {
        document.forms[i].onsubmit = function() {return validForm();}
    }
}





function validForm() {
    var allGood = true;
    var allTags = document.getElementsByTagName("*");
    
    for (var i=0; i<allTags.length; i++) {
        if (!validTag(allTags[i])) {
            allGood = false;
        }
    }
    
    return allGood;

    
    function validTag(thisTag) {
        var outClass = "";
        var allClasses = thisTag.className.split(" ");
        
        for(var j=0; j<allClasses.length; j++) {
            outClass += validBasedOnClass(allClasses[j]) + " ";
        }
        thisTag.className = outClass;
        
        if (outClass.indexOf("invalid") > -1) {
            invalidLabel(thisTag.parentNode);
            thisTag.focus();
            if (thisTag.nodeName == "INPUT"){
                thisTag.select();
            }
            return false;
        }
        return true;
    
        
        function validBasedOnClass(thisClass) {
            var classBack = "";
            
            switch(thisClass) {
                case "":
                case "invalid":
                    break;
                case "reqd":
                    if (allGood && thisTag.value=="") classBack = "invalid";
                        classBack += thisClass;
                        break;
                default:
                    if (allGood && !crossCheck(thisTag,thisClass)) classBack = "invalid";
                    classBack += thisClass;
                    
                    }
                return classBack;
                
            }
            
            
            function crossCheck(inTag,otherFieldID) {
                if (!document.getElementById(otherFieldID)) return false;
                    return (inTag.value == document.getElementById(otherFielID).value);
                }
                
                
            function invalidLabel(parentTag) {
                if (parentTag.nodeName == "LABEL") {
                    parentTag.className += "invalid";
                }
            }
                
            function validEmail(email) {
                var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
    
                return re.test(email);
                }
                

        }
    }
    
 [/quote]

mais ca marche pas , pourtant je vois pas d'erreurs :(
merci de bien vouloir m'aider
jeudi 17 avril 2008 à 09:07:34 | Re : Pb de validation d'un formualaire

bultez

Membre Club


Bonjour,



    1°   window.onload = initForms;
            window.onload = initForm;
          la 2ème instruction écrase la 1ère. seul nitForm sera appelé.
          alors déjà :    window.onload=function()   { intForms(); initForm();    }

    2° tu as peut-être d'autres erreurs, syntaxe ou autres
                tu as activé le debogger ou regardé la console d'erreur ?

¡--------¡----------------------------------------------------------¡
|FireFox |regarder la "console d'erreurs" |
| | Outils / Console d'erreurs |
| | |
| | et mieux, télécharger FireBug |
|--------|----------------------------------------------------------|
|Internet|activer le deboggage : Outils/options Internet/Avancés |
|Explorer| dans la liste, sous "Navigation" : décocher |
| | ° Afficher une notification de chaque erreur de script |
| | ° Désactiver le débogage de Scripts (Internet Explorer) |
| | |
| | et mieux, télécharger le Debogger IE |
|--------|----------------------------------------------------------|
|K-Meleon|regarder la "console d'erreurs" |
| | Outils / Console d'erreurs |
|--------|----------------------------------------------------------|
|Opera |regarder la "console d'erreurs" |
| | Outils / Avancé / Console d'erreurs |
|--------|----------------------------------------------------------|
|Safari |regarder Debug / Show JavaScript Console |
| | |
| |modif Fichier "Support:\Documents and Settings\utilisateur|
| |\Application Data\Apple Computer\Safari\Preferences.plist"|
| | y ajouter <key>IncludeDebugMenu</key> |
| | <true/> |
!--------!----------------------------------------------------------!



                Cordialement            Bul         [mon Site]     [M'écrire]
jeudi 17 avril 2008 à 13:09:29 | Re : Pb de validation d'un formualaire

HovOne

j'ai changé , et j'utilise firebug pour la syntaxe , aucune erreur de syntaxe , mais ca marche pas toujours :(
jeudi 17 avril 2008 à 18:40:20 | Re : Pb de validation d'un formualaire

bultez

Membre Club
si tu as corrigé,
    pour tester j'ai mis :   <form action="javascript:alert('ok');">
    en envoyant, sans rien remplir, "ok" est affiché.
    pas d'erreur de syntaxe, erreurs de logique
    il te reste à regarder où tu passes, en paremant d'alert
       ou en faisant du pas à pas avec le debugger.

                Cordialement            Bul         [mon Site]     [M'écrire]


Cette discussion est classée dans : function, var, document, nbsp, thistag


Répondre à ce message

Sujets en rapport avec ce message

Tableau 2D [ par malik7934 ] Hello, En deux mots: j'ai fais ça: http://noisy.ch/smilies/smilies2.html mais je n'y connais rien à Javascript (c'est pour un chat en php). J'ai modi Problème d'inscription ! [ par roxor666 ] Svp je voudrais avoir un script, je sais qu'il existe mais je ne le trouve plus.LE but est que quand un gars s'inscrit sur mon site je recoit le pass script a modifier. Je suis pas capable de le faire [ par pusse ] Salut à tous. J'ai recuperer sur le net un script de menu defilant horizontalement. Tout marche tres bien sauf  que je rencontre un petit probleme. Qu sroller [ par termi62 ] voici la source: je voudrais pouvoir scroller uniquement dans la parti couche 1 un texte que je vais mettre.< scroller [ par termi62 ] voici la source: je voudrais pouvoir scroller uniquement dans la parti couche 1 un texte que je vais mettre.< sroller [ par termi62 ] voici la source: je voudrais pouvoir scroller uniquement dans la parti couche 1 un texte que je vais mettre.< Problème compatibilité de ma page sous Firefox [ par shadow125 ] Hello :)Voila je programme la V 3.2 de mon site et j'aimerai faire un truc vraiement joli :) Donc j'ai fais des jeux de cadre pour faire une structure ajax/xmlhttprequest [ par David_monchy ] salut à tous,je développe un chat, et j'ai un problème: j'utilise une liste de connectés qui affiche en 'temps reel' les membres connectés. Seulement, Problème de menu à arborescence [ par nougitch ] Bonjour,J'aimerai que quand je clique sur "Project", les 3 lignes de tableaux suivantes se baissent. (il faut impérativement que ce soit des tr).Merci Player multi format sécuriter java & php [ par c2bomb ] bonjour a tous,je cherche a afficher mon player,dans une fenetre style popup,mais hélas je suis vraiment nulle en javascript...si quelq'un peut m'aide


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales