Mailinglisten-Archive |
Hallo Lutz, >> $Modul = Pruefe_Modul('fibu'); >> /* ^ Liefert bei true 'fibu', sonst 0 */ > > $Modul enthaelt hier aber noch den richtigen Wert? $Modul = Pruefe_Modul('fibu'); // gibt 'fibu' zurück $Funktion = $Pruefe_Funktion('zudd_erfassen', $Modul); // sollte 'zudd_erfassen' zurück geben Rein vom Ablauf her sind die Funktionen richtig. $Modul erhält den richtigen Wert('fibu') zurück und schaut dann in Pruefe_Funktion() eben nur nach den Berechtigungen von $_SESSION['cl_Rechte']['fibu']. > Hast Du Dir den Inhalt von $Rechte nach dieser Operation an dieser > Stelle > ausgeben lassen (z.B. print_r($Rechte))? Ist hier noch alles ok? Hier mal zwei print_r($Rechte), das erste von User 'Vertrieb',das zweite für 'Fibu': Array([vertrieb] => Array([0] => reklamation [1] => schritt 1)) Array([fibu] => Array([0] => zudd [1] => zudd_erfasssen)) > D.h. es geht eigentlich nicht darum, dass $Funk leer bleibt, sondern > $Value bzw. dass $Value an dieser Stelle einen falschen Wert > enthaelt. Jawohl! Habe das nächste mal um ein paar Zeilen erweitert: >> if (!empty($Rechte[$Modul])) { print_r($Rechte[$Modul])); >> foreach($Rechte[$Modul] as $Value) { echo $Value.' : '.strtolower($Funktion); >> if ($Value == strtolower($Funktion) || $Value == "all") >> $Funk = $Funktion; >> } >> } Und raus kommt das: Array ( [0] => zudd [1] => zudd_erfasssen ) zudd : zudd_erfassen zudd_erfasssen : zudd_erfassen $_SESSION['Rechte']['all'] ist nciht vorhanden, da dieses nur für mich und/oder ROOT ist. Und nun? Ist guter Rat teuer? -- Mit freundlichen Grüßen / Kind regards Steffen Kother
php::bar PHP Wiki - Listenarchive