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

Langage PHP Discussion :

Condition OU qui passe comme un ET


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 57
    Par défaut Condition OU qui passe comme un ET
    Bonjour à tous,

    J'ai un souci avec une condition IF.
    En effet, dans ce IF j'utilise le OU, mais celui est compté comme un ET.

    Voici mon code simplifié:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if ($_SESSION['s_login']!="" || $_GET['vote']=="") 
    {
    blabla
    }
    else
    {
    blabla}
    Donc voila, je ne comprends pas pourquoi ce || est compté comme un &&.
    J ai testé les 2 conditions séparément, elles sont correctes

    J ai essayé avec des parenthèses du style:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if ( ($_SESSION['s_login']!="") || ($_GET['vote']=="") ) 
    {
    blabla
    }
    else
    {
    blabla}
    Idem, ça marche pas

    Si quelqu'un avait une idée, je serais preneur!
    Merci d'avance et bonne fin de week end

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ton ecriture est correcte et ton || est bien un OU.
    Fais des var_dump de tes deux variables pour les controler.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 57
    Par défaut
    Bon deja merci de ton aide.

    Ensuite, avec un var_dump j'obtiens ceci:

    Pour $_SESSION['s_login'] :

    - string(14) "monpseudo" (quand $_SESSION['s_login'] n'est pas vide)
    - NULL (quand $_SESSION['s_login'] est vide)

    pour $_GET['vote'] :

    - string(3) "valuer_de_vote" (quand $_GET['vote'] n'est pas vide)
    - NULL (quand $_GET['vote'] est vide)

    voila. ça te permet logique? car personnellement je ne connaissais pas var_dump

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Quelle combinaison te semble ne pas fonctionner comme tu voudrais ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 57
    Par défaut
    Je ne sais pas si je saisis bien ta question mais en gros une seule combinaison marche, celle ou les 2 conditions sont réunies - ce qui me dérange puisque moi je veux que ça marche si une des 2 seulement se réalise
    La j avoue que je suis paumé puisque j ai essayé d autres boucles avec des || et elles marchent parfaitement!

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    ba donne moi les var_dump des variables pour lesquels ta condition ne se comporte pas comme tu l'attendrais.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 14/01/2007, 13h21
  2. Un input qui passe de type text à type password ?
    Par Michaël dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/06/2005, 11h33
  3. menu qui passe au dessus du texte
    Par peck dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 24/12/2004, 15h03
  4. Réponses: 6
    Dernier message: 03/09/2003, 10h29
  5. Programme de boot qui passe la main à Windows
    Par Bob dans le forum Assembleur
    Réponses: 7
    Dernier message: 25/11/2002, 03h08

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