PHP interesse |
|
Ik probeer een bitwise-rechtensysteem voor elkaar te krijgen.
Nu heb ik al 2 manieren geprobeerd (deze en deze), maar ik kom er telkens niet aan uit.
Dit zijn de rechten:
Admin: 8
Lid3: 4
Lid2: 2
Lid1: 1
Nu heb ik één pagina met rechten 12 (Lid3+Admin, dus: 4+8).
Toch krijg ik een foutmelding als ik met recht 8 ingelogd ben.
Terwijl 8 volgens de theorie toch een bit van 12 zou moeten zijn?
Hier mijn code:
if(($selectuser2['rechten'] & $showcmsmenu4['rechten']) > 0){
echo "Show pagina";
}
else{
echo "Foutmelding<br>";
echo "Rechten gebruiker:".$selectuser2['rechten']."<br>";
echo "Rechten menu:".$showcmsmenu4['rechten']."<br>";
echo "Uitkomst:".($selectuser2['rechten'] & $showcmsmenu4['rechten'])."<br>";
}
if(($selectuser2['rechten'] & $showcmsmenu4['rechten']) > 0){ } else{ echo "Rechten gebruiker:".$selectuser2['rechten']."<br>"; echo "Rechten menu:".$showcmsmenu4['rechten']."<br>"; echo "Uitkomst:".($selectuser2['rechten'] & $showcmsmenu4['rechten'])."<br>"; }
|