IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Fonctions et leur return !?!


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juillet 2007
    Messages
    31
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Directeur technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Par d�faut Fonctions et leur return !?!
    Slt � tous,

    Alors c est encore en rapport avec l envoie d'un formulaire !! mais cette fois je pr�f�re reformuler.

    Voila donc je cree une fonction javascript entre les balises Head et /HEAD comme ceci :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
     
    function writediv(texte)
    {
    document.getElementById('pseudobox').innerHTML = texte;
    }
     
    function verifPseudo(pseudo)
    {
     
    if(pseudo.length<5){
    writediv('<span style="color:#cc0000">ce pseudo est trop court</span>');
    document.formulaire.ndj.focus(); 
    return false;
     }
     
    if(pseudo.length>15){
    writediv('<span style="color:#cc0000">ce pseudo est trop long</span>');
    document.formulaire.ndj.focus(); 
    return false;
    }
     
    if(texte = file('verification.php?ndj='+escape(pseudo)))
    {
    if(texte == 1){
    writediv('<span style="color:#cc0000">ce pseudo est deja pris</span>');
    document.formulaire.ndj.focus(); 
    return false;
    }
     
    if(texte == 2){
    writediv('<span style="color:#1A7917">ce pseudo est libre</span>');
    return true;
    }
    }
    }
     
    function file(fichier)
    {
    if(window.XMLHttpRequest) // FIREFOX
    xhr_object = new XMLHttpRequest();
    else if(window.ActiveXObject) // IE
    xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    else
    return(false);
    xhr_object.open("GET", fichier, false);
    xhr_object.send(null);
    if(xhr_object.readyState == 4) return(xhr_object.responseText);
    else return(false);
    }
     
     
    function validation() 
    { 
     
     
            var email = document.formulaire.email.value; 
            if (email.search(/^[_a-z0-9-]+(.[_a-z0-9-]+)*[^._-]@[a-z0-9-]+(.[a-z0-9]{2,4})*$/) == -1)
            { 
            alert ('Entrez une adresse Email valide'); 
            document.formulaire.email.focus(); 
    		return 0;
            } 
           	if(document.formulaire.ndj.value == "") 
    		{ 
            alert ('Veuillez entrer votre Nom de Joueur'); 
            document.formulaire.ndj.focus(); 
    		return 0;
        	}
     
    		if(document.formulaire.mdp.value == "") 
    		{ 
            alert ('Veuillez entrer un Mot de Passe'); 
            document.formulaire.mdp.focus(); 
    		return 0;
        	}
     
    		if(document.formulaire.condition.checked == false) 
    		{ 
            alert ('Veuillez accepter les conditions'); 
            document.formulaire.condition.focus(); 
    		return 0;
        	}
     
     
    else {    
     
    		return true;
    }
    }
     
    if(validation() && verifPseudo()){
    my_form = eval(formulaire)
       window.open("inscription.php", "popup", "height=500,width=540,menubar='no',toolbar='no',location='no',status='no',scrollbars='no'");
       my_form.target = "popup";
       my_form.submit();
       }
    Ce petit bout de code � pour but de verifier l'existance du pseudo dans le champs ndj (nom de joueur) et de verifier en direct via la page verification.php si il n'existe pas d�j� et laffiche en direct dans une DIV ayant l'id PSEUDOBOX donc voici la page verification.php :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?
     
    if(@$_GET['ndj'])
    {
    //
    // VERIFICATION EN LIVE DU PSEUDO
    //
     
    // CONNECION SQL
    require_once('config.php');
     
    // VERIFICATION
    $result = mysql_query("SELECT ndj FROM membres WHERE ndj='".$_GET["ndj"]."'");
    if(mysql_num_rows($result)>0)
    echo "1";
    else
    echo "2";
    }
    ?>
    Ensuite on doit creer le formulaire qui doit �tre v�rifi� !

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    <form name="formulaire" method="post">
    <input type="text" id="pseudo" onBlur="verifPseudo(this.value);" name="ndj">
    <div id="pseudobox"></div>
    <input type="image" name="validation" src="images/inscription/_146.gif" width="93" height="17" border="0" alt="Inscrivez-vous !" onClick="validation();" onKeyDown="validation();">
    </form>
    et voila

    MON PROBLEME : comme vous avez pu remarquer dans mon code entre les balise HEAD et/HEAD qu il y avait un petit morceau qui ouvrait un pop up si les fonctions verifPseudo et validation etaient "TRUE" :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    if(validation() && verifPseudo()){
    my_form = eval(formulaire)
       window.open("inscription.php", "popup", "height=500,width=540,menubar='no',toolbar='no',location='no',status='no',scrollbars='no'");
       my_form.target = "popup";
       my_form.submit();
       }
    et ba ca marche pas du tout, je n arrive pas a faire en sorte d'ouvrir le pop up quand les deux fonction return TRUE alors comment faire !!!! mes return sont bien plac�s ???

    Question : Comment pourrais-je faire pour que mon pop up s'ouvre si et seulement si mes fonctions retourne VRAI !!??

    Merci d'avance ^^

    "J'ai pas verifier les fautes d'orthographres soyez tol�rant ^^

  2. #2
    Mod�rateur
    Avatar de Bis�n�rs
    Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par d�faut
    D�j� tu peux (dois) utiliser l'attribut onsubmit de la balise form et non pas le onclick du bouton.

  3. #3
    Membre averti
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juillet 2007
    Messages
    31
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Directeur technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Par d�faut
    Je sais j'ai dej� essay� mais ca ne fonctionne pas !!!! pourtant ca devrai et je ne trouve pas l erreur !!!! je comprend pas il veut pas ouvrir ce satan� pop up !!!!!!!!!

    merci tout de m�me de ta r�ponse

  4. #4
    Mod�rateur
    Avatar de Bis�n�rs
    Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par d�faut
    Ben ta condition :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    if(validation() && verifPseudo())
    n'est dans aucune fonction, elle est donc ex�cut�e au chargement de la page et jamais dans la v�rification du formulaire ..

    Fais comme �a :

    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    <form ... onsubmit="return nomdunenouvellefonction()">

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function nomdunenouvellefonction(){
       if(validation() && verifPseudo()){
          my_form = eval(formulaire)
          window.open("inscription.php", "popup", "height=500,width=540,menubar='no',toolbar='no',location='no',status='no',scrollbars='no'");
          my_form.target = "popup";
          my_form.submit();
          return true;
       }
       else{
          return false;
       }
    }
    Te reste plus qu'� corriger la ligne o� il y a le eval et le tour est jou�.

    Au passage, indente mieux ton code, il fait mal aux yeux.

  5. #5
    Membre averti
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juillet 2007
    Messages
    31
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Directeur technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Par d�faut
    ok je te remercie c'est super !! ca marche mais la c'est une sorte de brouillons : quand il y a un probl�me je tente enormement de solution et ca brouille le tous mais maintenant je vais "nettoyer" tout �a et mettre des commentaires ^^

    Je te remercie de m'avoir r�pondu bon ap' ^^

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 4
    Dernier message: 03/09/2006, 19h12
  2. R�cuperer des fichiers en fonction de leur anciennet�
    Par julien000 dans le forum Langage
    R�ponses: 3
    Dernier message: 24/07/2006, 17h09
  3. R�ponses: 11
    Dernier message: 27/06/2006, 20h21
  4. [Mail] fonction mail() et return-path
    Par -DeN- dans le forum Langage
    R�ponses: 8
    Dernier message: 22/02/2006, 13h54
  5. Affichage d'�v�nements en fonction de leur date ?
    Par swirtel dans le forum Langage SQL
    R�ponses: 2
    Dernier message: 17/05/2005, 10h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo