Php et if

Résolu/Fermé
forumeur - 29 sept. 2012 à 10:42
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 30 sept. 2012 à 15:55
Bonjour,

Je cherche à remplacer une notation par une image. Comment faire comprendre que $note doit être situé entre 2 et 3 ?

if ($note==3){ $affnote = "<img src=\"../../comments/note/3star.png\" border=\"0\">";}


Merci d'avance

7 réponses

Zawaxa Messages postés 67 Date d'inscription vendredi 20 juillet 2012 Statut Membre Dernière intervention 2 octobre 2012 16
29 sept. 2012 à 11:18
if ($note<=3 OR $note>=2)
     {
if ($note==3){ $affnote = "<img src=\"../../comments/note/3star.png\" border=\"0\">";}   
      }


Comme ça si note est compris entre 2 et 3, c'est bien ça que tu cherches ?
0
if( $note<=3 OR $note>=2 ) => Est vrai quelque soit la valeur de $note
=> if( $note<=3 && $note>=2 )
0
if( $note<=0 OR $note>=1){ $affnote = "<img src=\"../../comments/note/1star.png\" border=\"0\">";}
	if( $note<=2 OR $note>=3){ $affnote = "<img src=\"../../comments/note/2star.png\" border=\"0\">";}
	if( $note<=3 OR $note>=4){ $affnote = "<img src=\"../../comments/note/3star.png\" border=\"0\">";}
	if( $note<=4 OR $note>=4.5){ $affnote = "<img src=\"../../comments/note/4star.png\" border=\"0\">";}
	if( $note<=4.5 OR $note>=5){ $affnote = "<img src=\"../../comments/note/5star.png\" border=\"0\">";}


Pour l'instant, il ne s'affiche que 5star.png quelque soit la moyenne. Je débute avec les conditions en php. Merci du coup de main !
0
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
29 sept. 2012 à 18:39
Si le problème est résolu, il faut passer le message en "résolu" en haut de la page.
0
Je suis désolé, je me suis mal exprimé, le problème n'est pas encore résolu, car pour l'instant, c'est l'image 5stars.png qui s'affiche quelque soit la note.
0
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
29 sept. 2012 à 19:05
Tu peux essayer ça:
if( $note<=0 && $note>=1){ $affnote = "<img src=\"../../comments/note/1star.png\" border=\"0\">";}
elseif( $note<=2 && $note>=3){ $affnote = "<img src=\"../../comments/note/2star.png\" border=\"0\">";}
elseif( $note<=3 && $note>=4){ $affnote = "<img src=\"../../comments/note/3star.png\" border=\"0\">";}
elseif( $note<=4 && $note>=4.5){ $affnote = "<img src=\"../../comments/note/4star.png\" border=\"0\">";}
elseif( $note<=4.5 && $note>=5){ $affnote = "<img src=\"../../comments/note/5star.png\" border=\"0\">";} 

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ça n'affiche aucune image.
0
if( $note<=0 && $note>=1) => Toujours faux, quelque soit la valeur de $note, etc

Sinon, pas nécessaire de faire plusieurs fois les mêmes tests:
$starLevel = 0;
if(empty($note)){}
elseif($note<=1){ $starLevel = 1;}
elseif($note<=2){ $starLevel = 2;}
elseif($note<=3){ $starLevel = 3;}
elseif($note<=4.5){ $starLevel = 4;}
elseif($note<=5){ $starLevel = 5;}
$affnote = '<img src="../../comments/note/'.$starLevel.'star.png" border="0">';
0
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
30 sept. 2012 à 15:55
Bah oui, je suis con, un variable peut par être égale à deux valeurs en même temps :)
0
Impeccable, ça marche parfaitement comme ça. Merci à tous les deux !
0