8792 sujets

Développement web côté serveur, CMS

hello, est il possible d'utiliser une "fourchette" comme condition ?
Par exemple
if
ma valeur est entre 5 et 10

Ou bien je suis obligé de le faire en deux fois ?
Modifié par gordie (31 May 2007 - 14:10)
Je trouve pas ?
Ou alors ça veut dire que ce 'nest pas possible ?
Actuellement, j'ai fais comme ça :

	if ( ($picnbr > 4) && ($picnbr <= 8) ) {
		$op += 0.25;
	} elseif ( ($picnbr > 8) && ($picnbr <= 12)) ) {
		$op -= 0.25;
	} else {
		$op = 0;
	}
C'est bon sauf que tu as une parenthèse en trop après le 12 :
} elseif ( ($picnbr > 8) && ($picnbr <= 12) ) {
Ok.... Mon code était bon, c'est en le simplifiant pour le poster que j'ai oublié une parenthèse...
Dommage que cette fonction n'existe pas !
Pour les requêtes SQL c'est possible..
Euuuh...

if ($a > 5 AND $a < 10){
   echo "$a est compris entre 5 et 10";
}
else{
   echo "$a n'est pas compris entre 5 et 10";
}


ça va pas ça ?
edit : ah, je viens de comprendre que ça doit être ça que tu appelles "faire en 2 fois", donc je crois pas qu'il y ait d'autres solutions.
Modifié par BlueScreenJunky (29 May 2007 - 00:16)
a écrit :
Pour les requêtes SQL c'est possible..


tu dois penser a l'operateur between dans les select where...

mais cet operateur a en charge un nombre bien plus limité de possibilité.

pas de else, encore moins de elseif, pas de triple condition ni encore moins plus,etc......

La structure du if/then/else est impossible a écrire en SQL pur. il faut justement passer par un language de programmation.


si tu as un besoin simple et tres specifique avec un intervalle tu peux coder ta propre fonction mais sinon....
Modifié par CPascal (29 May 2007 - 00:42)
Administrateur
Bonjour,

du temps où TRUE était évalué à -1 et FALSE à 0, il était possible de l'écrire en 1 ligne mais le "code spaghetti" que ça donnait était pas beau à relire Smiley decu
Et pour le moteur de PHP, ces 5 lignes sont exécutées en un éclair, pas d'inquiétude.
Modifié par Felipe (29 May 2007 - 10:46)