Probleem
Ik heb een selectie vak met daarin de opties ($menuoptions) die ik uit de database haal. Wat ik wil is dat alleen de opties die met de rechten van de gebruiker overeenkomen ($arUserRights) voorgeselecteerd worden. Dit werkt wel, maar nu krijg ik overal opties die vaker voorkomen (wat logisch is in verband met de loop), maar dit is niet de bedoeling
.
Ik heb geprobeerd om de menuopties die al geweest zijn in een array op te slaan en die te matchen tegen de huidige menuoptie, helaas wil dat niet werken. Ik heb ook al geprobeerd om de array keys die geweest zijn te unsetten, maar ook dat was geen succes.
Weten jullie misschien hoe ik dit het beste op kan lossen?
$menuoptions
$arUserRights
Ik heb een selectie vak met daarin de opties ($menuoptions) die ik uit de database haal. Wat ik wil is dat alleen de opties die met de rechten van de gebruiker overeenkomen ($arUserRights) voorgeselecteerd worden. Dit werkt wel, maar nu krijg ik overal opties die vaker voorkomen (wat logisch is in verband met de loop), maar dit is niet de bedoeling
Ik heb geprobeerd om de menuopties die al geweest zijn in een array op te slaan en die te matchen tegen de huidige menuoptie, helaas wil dat niet werken. Ik heb ook al geprobeerd om de array keys die geweest zijn te unsetten, maar ook dat was geen succes.
Weten jullie misschien hoe ik dit het beste op kan lossen?
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| <select id="user-rights" name="rights[]" title="Rechten" multiple="multiple"> <?php foreach ($menuoptions as $key => $value) { $arUserRightsSize = count($arUserRights); for ($i = 0; $i < $arUserRightsSize; $i++) { if (in_array($value['rights'], $arUserRights[$i]) == true) { echo "<option selected=\"selected\" value=\"". $value['rights'] ."\">". $value['name'] ."</option>\n"; } else { echo "<option value=\"". $value['rights'] ."\">". $value['name']. "</option>\n"; } } } ?> </select> |
$menuoptions
Array ( [0] => Array ( [id] => 4 [name] => AOI [uri] => /?action=aoi [rights] => 5 ) [1] => Array ( [id] => 9 [name] => AQL eindcontrole [uri] => /?action=aql-eindcontrole [rights] => 10 ) [2] => Array ( [id] => 1 [name] => AQL ingangscontrole [uri] => /?action=aql-ingangscontrole [rights] => 2 ) [3] => Array ( [id] => 2 [name] => Eerste board controle [uri] => /?action=eerste-board-controle [rights] => 3 ) <--- KNIP ---> )
$arUserRights
Array ( [0] => Array ( [rights] => 5 [name] => AOI ) [1] => Array ( [rights] => 6 [name] => SMD Touch-up ) [2] => Array ( [rights] => 8 [name] => Handmontage Touch-up ) )