Comment formuler mon "IF"

Petit nouveau ! | 7 Messages

08 avr. 2010, 17:52

Bonjour,

Je souhaiterai faire en sorte que SI la première condition: ($_SESSION['niveau']=="manager") est remplie ETpas la seconde: (($frm['left_lm'] > $_SESSION['left_lm']) && ($frm['right_lm'] < $_SESSION['right_lm'])) l'utilisateur soit renvoyé vers une autre page. J'ai bien essayé avec un "!" devant la deuxième condition mais ça ne fonctionne pas. L'utilisateur est renvoyé même si les deux conditions sont remplies.
<?php
if (($_SESSION['niveau']=="manager") && (($frm['left_lm'] > $_SESSION['left_lm']) && ($frm['right_lm'] < $_SESSION['right_lm'])) )  
{
header("Location:error.php");	
}
?>
Auriez-vous une idée ?
Merci de votre aide..

Eléphant du PHP | 428 Messages

08 avr. 2010, 18:19

je souhaiterai faire en sorte que SI la première condition: ($_SESSION['niveau']=="manager") est remplie ETpas la seconde: (($frm['left_lm'] > $_SESSION['left_lm']) && ($frm['right_lm'] < $_SESSION['right_lm'])) l'utilisateur soit renvoyé vers une autre page.
Le truc est la ... tu vérifie actuellement si $_SESSION[manager] est strictement égale à manager et si $frm['left_lm'] > $_SESSION['left_lm'] et si $frm['right_lm'] < $_SESSION['right_lm'].

En français :
(Si session manager est strictement égale à manager et (que la variable $frm['left_lm'] est plus grande que la session left_lm) et (que la variable $frm['right_lm'] est plus petite que la session 'right_lm) { On exécute la page d'erreur ...


Fais l'inverse ...
($frm['left_lm'] < $_SESSION['left_lm']) && ($frm['right_lm'] > $_SESSION['right_lm'])
Ce qui nous donne :
(Si session manager est strictement égale à manager et (que la variable $frm['left_lm'] est plus petite que la session left_lm) et (que la variable $frm['right_lm'] est plus grande que la session 'right_lm) { On exécute la page d'erreur ...

<?php
if (($_SESSION['niveau']=="manager") && (($frm['left_lm'] < $_SESSION['left_lm']) && ($frm['right_lm'] > $_SESSION['right_lm'])) )  
{
header("Location:error.php");  
}
?>

Bien sur, je ne connais pas l'implémentation de tes variables et tout ton code ...
A tester.


a+

Petit nouveau ! | 7 Messages

08 avr. 2010, 22:23

Merci visualight ! c'est vrai que vu comme ça c'est logique ! On pourrait même remplacer le 2ème && par ||
Merci encore pour le temps que tu as consacré à ma question :D