Aller au contenu
Cylvain

Condition if avec and

Noter ce sujet :

Recommended Posts

Bonjour à tous,

Je voudrais avoir l'affichage de mes donnés par rapport à des conditions différentes.

en fait: si ma valeur RADH est >0 et ma valeur RADC >0
alors l'affichage est (valeurRADH / valeurRADC)

si ma valeur RADH est <0 et ma valeur RADC >0
alors l'affichage est ( valeurRADC)

si ma valeur RADH est >0 et ma valeur RADC <0
alors l'affichage est ( valeurRADH)

voici le fragment de mon code mais je ne suis pas sur de la syntaxe, de plus, rien ne s'affiche 
 

if(($lof_row['RADH']>0) AND ($lof_row['RADC']>0)){
echo '<p>('.$lof_row['RADH'].' /'.$lof_row['RADC'].') </p>';
} 
elseif(($lof_row['RADH']<0) AND ($lof_row['RADC']>0)){
echo '<p>( '.$lof_row['RADC'].') </p>';
} 
elseif(($lof_row['RADH']>0) AND ($lof_row['RADC']<0)){
echo '<p>( '.$lof_row['RADH'].') </p>';
}

Merci pour votre aide

Modifié par Cylvain

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

 

En PHP, on n'utilise pas le AND pour faire des conditions mais le && ( AND )  ou le || ( OR ).

 

Remplace tes AND par des && et vois si ca sort. A priori je ne vois pas d'autre problème.

Partager ce message


Lien à poster
Partager sur d’autres sites

Es-tu certain que tes variables $lof_row[...] ne sont pas nulles ?

Parce qu'au cas où elles sont égales à zéro, rien ne s'affichera !

Idem si les deux sont négatives ! ;)

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir, 

 

Oui certain que mes variables ne sont pas nulles, j'affiche celles-ci plus haut dans ma feuille

en fait cette variable est ou rien ou HD et pour la deuxième ou rien ou ED

lorsque je fais 

var_dump($lof_row)

 ["RADH"]=> string(2) "HD" [8]=> string(2) "HD" ["RADC"]=> string(2) "ED" [9]=> string(2) "ED"

merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Comment peux-tu faire des comparaisons avec 0 pour des valeurs telles que "HD" ou "NULL" ?

Comme le dit justement Blackpage, c'est la logique de ton code qui est à revoir !

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

Merci pour vos explications, effectivement mes valeurs ne sont pas numériques, je vais revoir la logique de mon code mais je pense qu'attendu que je n'aurais que HD et ED dans ces variantes, je vais utiliser le ='HD' et !='HD'......

Merci encore pour vos explications 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Pas le "='HD' qui est une assignation. Il faut un double (ou triple) signe = pour que ce soit un test comme le signale Eric73 plus haut !

Et pour des chaînes de caractères, on utilise plutôt strcmp() ou strncmp()

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×