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 :

Condition à deux éléments avec un opération logique ||


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 184
    Points : 87
    Points
    87
    Par défaut Condition à deux éléments avec un opération logique ||
    Bonjour,
    je suis entrain de développer une condition en javascript qui me pose des problèmes.
    A savoir je suis sur un formulaire avec deux types de contrat (contrat et devis) qui passe par le même fichier. Celui-ci est composé de deux page (formulaire et recap).
    Lorsque je reviens sur le formulaire pour faire une modification pour un contrat no pbl mais par contre pour un devis là oui.
    Le devis ne propose pas tous les cas que proposes un contrat. Donc du coup certaines conditions ont été mises en place et l'un d'entre elle me pose problème.
    voici ma condition:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if( '<?php echo $_SESSION['Contrat']['Code_Produit']?>' !== 'DEVIS_GPRSCGD' || '<?php echo @$_SESSION['Contrat']['Produit']?>'!=='DEVIS_GPRSCGD' )
    .......
    sachant que soit l'une ou l'autre de mes variables de session est contenu dans la page appelé.
    Le "||" n'ai pas vu comme étant un opérateur logique et du coup il passe à travers.
    J'ai regardé sur pas mal de forum et je n'arrive pas à trouver de soluce clair.

    Avez vous une idée ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    c'est sûr que si tu mélanges JS et PHP, ça risque de poser problème...

    • PHP permet de "construire" la page (qui contiendra alors du HTML + JS, mais PLUS de PHP)
    • JS sera actif APRES la création de la page.



    donc :
    • Comment est créée la page (en PHP ?)
    • Comment différencies-tu "contrat" et "devis" ?

    Et montre-nous au moins un bout du code JS !
    if(...) ....... : c'est un peu "léger"...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 184
    Points : 87
    Points
    87
    Par défaut
    Bonjour,
    excuse moi de répondre si tardivement.

    la suite de mon code est celui ci:
    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
    {
    		if($('input[type=radio][name=rep_leg]:checked').val()!= null)
    		{
    			if($('input[type=radio][name=rep_leg]:checked').val() === "CAIXA" && $('input[name=num_rep_legal]').val().length == 0)
    			{
    				alert('Vous devez indiquer un numéro de tiers.');
    				return false;
    			}
    			else if($('input[type=radio][name=rep_leg]:checked').val() === "NO_TIERS")
    			{
    				if($('input[name=rep_legal_qualite_new]').val().length == 0)
    				{
    					alert('Vous devez indiquer la qualité du représentant légal.');
    					return false;
    				}
    ................
    J'aimerais récupérer des variables de session et je n'ai pas vu comment les récupérés en JS.

    J'ai essayé de les récupérés comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var contrat = <?php echo $_SESSION['Contrat']['Code_Produit']?>;
    var Produit = <?php echo @$_SESSION['Contrat']['Produit']?>;
    Est ce qu'il n'y aurait pas plus simple ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    A moins que ce soit des numériques, il faut des apostrophes autour.

    Et vire l'@ : c'est un cache-misère.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var contrat = '<?php echo $_SESSION['Contrat']['Code_Produit']; ?>';
    var Produit = '<?php echo $_SESSION['Contrat']['Produit']; ?>';

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 184
    Points : 87
    Points
    87
    Par défaut
    Bonjour,
    le problème est toujours présent sur ma page.
    Je n'arrive pas à lui faire entendre que si les variables de sessions sont différentes de DEVIS_GPRSCGD alors il doit passer dans la condition.

    Code ci dessous:
    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
     
    //La condition ci dessous n'est pas vu où non fonctionnelle mais pourquoi ?
    if( !contrat.split('DEVIS_GPRSCGD') || !Produit.split('DEVIS_GPRSCGD'))  
    	{
    		if($('input[type=radio][name=rep_leg]:checked').val()!== null)
    		{
    			if($('input[type=radio][name=rep_leg]:checked').val() === "CAIXA" && $('input[name=num_rep_legal]').val().length == 0)
    			{
    				alert('Vous devez indiquer un numéro de tiers.');
    				return false;
    			}
    			else if($('input[type=radio][name=rep_leg]:checked').val() === "NO_TIERS")
    			{
    				if($('input[name=rep_legal_qualite_new]').val().length == 0)
    				{
    					alert('Vous devez indiquer la qualité du représentant légal.');
    					return false;
    				}
    				if($('input[name=rep_legal_prenom_new]').val().length == 0)
    				{
    					alert('Vous devez indiquer le prénom du représentant légal.');
    					return false;
    				}
    				if($('input[name=rep_legal_nom_new]').val().length == 0)
    				{
    					alert('Vous devez indiquer le nom du représentant légal.');
    					return false;
    				}
    			}
    		}
    		else 
    		{
    			alert('Vous devez indiquer un type de client.');
    			return false;
    		}
    Si vous avez une solution je suis prenneur.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/10/2011, 13h48
  2. transfert lignes,colonnes sur deux feuille avec condition
    Par explosion dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 10/06/2010, 14h42
  3. probleme avec opération logique
    Par babylone_59 dans le forum Windows Forms
    Réponses: 9
    Dernier message: 21/10/2008, 16h13
  4. Un élément avec deux attributs
    Par Kuroro dans le forum Valider
    Réponses: 1
    Dernier message: 17/03/2008, 11h36
  5. Faire une liste avec deux éléments par ligne
    Par pc.bertineau dans le forum Mise en page CSS
    Réponses: 18
    Dernier message: 12/04/2007, 14h47

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