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 :

Fonction passe cacher sauf si membre


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Par défaut Fonction passe cacher sauf si membre
    Bonjour,
    Bonne année et santé

    J'ai un petit souci avec un code qui doit affiché la case passe si on rentre son identifiant (qui fonctionne)

    Par contre si on viens en tant qu'invité il me dit mot passe incorrect alors que c'est un compte invité donc pas besoin de passe (Membre non enregistrer)
    et si je suis enregistrer la case s'affiche bien.

    Mon code javascript (Function.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
    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
    /** 
     * @desc   : Fonction qui permet de controler si un pseudo est reservé a un membre ou pas 
     * @params : string psd
     * @return : none;
     **/
     function whoIs(psd,age,auth) {
    	// Si la fonction est appeler sur un pseudo qui n'est pas vide
    	if( psd != "" ) {
    		if(!auth) {
    	    var xhr = getXhr()
    	    document.getElementById("pssTextContainer").style.visibility="hidden";
    		document.getElementById("pssInputContainer").style.visibility="hidden";
    	  	// On défini ce qu'on va faire quand on aura la réponse
    	  	xhr.onreadystatechange = function(){
    									// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    									if( xhr.readyState == 4 && xhr.status == 200 ) {
    										// Si le pseudo appartient a un membre on affiche le champs du mot de passe
    										if( parseInt(xhr.responseText) == 1 ) {
     
     
    											document.getElementById("pssTextContainer").innerHTML="Votre mot de passe";
    									    	document.getElementById("pssInputContainer").style.visibility="visible";
    									    // On affiche juste qu'il est identifie en temps que visiteur
    										} else {
     
    									   		document.getElementById("pssTextContainer").innerHTML="Visiteur";
     
    										}
    									    // On affect la fonction openChat au bouton de connexion au chat
    										document.getElementById("enterChat").onclick = function() {
     
    																						  return openChat(age);
     
    																					   }
    									// La réponse n'est pas encore recu on met l'utilisateur en attente
    									} else {
    								    	document.getElementById("pssTextContainer").innerHTML="<img src='./images/load.gif'><span>Identification en cours ...</span>";
    										document.getElementById("pssTextContainer").style.visibility="visible";
    										// On annule la fonction OpenChat() du bouton de connexion au chat
    										document.getElementById("enterChat").onclick = function() {
    																						  alert("Identeification en cours ... patienter S.V.P");
    																						  return false;
     
    																						}
    								   }
    							 }
    		// Ouverture d'une connexion en GET
    		xhr.open("GET","inc/check.php?psd="+psd,true);
    		xhr.send(null);
     
    	} 
    	}
     }
    Et le code check.php

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
     // Definition du repertoire racine
     if(!defined('ROOT'))define('ROOT','../');
     // Inclusion Principale
     include ROOT.'inc/config.php'; // fichier de configuration et parametre
     if(is_member($_GET['psd'])) {
       echo '1';
    } else {
       echo '0';
    }

    Pis ici la partie de mon code qui me semble qui et concerné du fichier index.php

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        	<td width="11%">Pseudo</td>
        	<td width="40%">
        		<input type="text" name="psd" id='psd' value="<?php	if( isset($_SESSION['login'])) {echo ucfirst($_SESSION['login']);}elseif( isset($_COOKIE['psdoz']) ) {echo ucfirst($_COOKIE['psdoz']);}?>" onblur=" whoIs(document.getElementById('chat').psd.value,<?php echo $cfg['agemin']?>,<?php echo isset($_SESSION['login'])?'true':'false'?>)"/>
        	</td>
        	<td width="17%" id="pssTextContainer" <?php echo !isset($_SESSION['login'])?'style="visibility:hidden"':'style="visibility:visible"'?>>mot de passe</td>
        	<td width="32%" id="pssInputContainer" <?php echo !isset($_SESSION['login'])?'style="visibility:hidden"':'style="visibility:visible"'?>><input type="password" name="pss" id="pss" value="" /></td>
      	</tr>
        <tr>

    Cordialement Stéphane

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    salut

    peux tu être plus clair car je n'ai pas compris le pb.

    SVP reformate ton code car c'est pas facile à lire (espace et non tab)

    As tu ouvert dans ton navigateur l'url inc/check.php?psd= avec différentes valeurs pour vérifier que php te retourne ce que tu attend ?

    A+JYT

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Par défaut
    Bonjour sekaijin,

    Il me semble bien que je me suis mal exprimé.

    Bon j’essaie de réexpliquer.
    J'ai un espace membres où les membres, quand ils entre leur pseudo et leur passe, ça affiche le input passe sur la page index (au centre de la page).

    Par contre, si la personne veut entrer sur le site en invité, le input passe ne s'affiche pas, il et caché (ce qui est tout à fait normal).

    Mais le souci malgré que ce input soit caché, si l'invité entre les informations demandées (pseudo, âge, sexe, région, etc.) ça va afficher une alerte comme "Votre mot de passe et incorrecte" (ce qui n'est pas logique, il ne doit rien afficher et bien rester caché).

    Pour ta question "As tu ouvert dans ton navigateur l'url inc/check.php?psd= "

    J'ai donc testé comme suite :

    Lien/inc/check.php?psd=pseudo-enregistrer --> sa retourne 1

    et

    Lien/inc/check.php?psd=pseudo-NON-enregistrer --> sa retourne 0


    Cordialement Stéphane

Discussions similaires

  1. [syntaxe] appel fonction pour cacher un formulaire
    Par helene38250 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/11/2008, 10h58
  2. [MySQL] Fonction pour vérifier si un membre existe
    Par bassiste dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 22/03/2008, 13h27
  3. question sur les fonctions passées à GLUT
    Par Plomeg dans le forum GLUT
    Réponses: 3
    Dernier message: 09/02/2008, 13h58
  4. passage de paramètre à une fonction passée en paramètre
    Par bambou dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 03/08/2007, 10h39
  5. Réponses: 8
    Dernier message: 29/08/2006, 18h36

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