Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /* first of all erstmal ein Kommentar-Block:
- Wir haben eine Datenbank mit der Tabelle "flags" darinnen sind alle rechte die es so gibt beinhaltet, oder du erstellst dir einfach ein array ist mir Schnuppe dann bist du aber selber für die Umschreibung verantwortlich:
- Die Tabelle `flags` hat also einige Spalten:
- `flag` text NOT NULL
- `flag_name` varchar(160) NULL
- `name` varchar(320) NULL
- Wir tragen einige werte ein:
- INSERT INTO `flags`(`flag`,`flag_name`,`name`) VALUES
- ('1','news_write','News: Verfassen'),
- ('2','news_edit','News: Bearbeiten'),
- ('4','news_delete','News: Löschen'),
- ('8','news_comment_write','News-Kommentar: Schreiben');
- Also haben wir schon paar Flags mit flag.
- Sop nun zur Abfragung!*/
- $global_count = mysql_fetch_array(db_query('SELECT COUNT(`flag`) FROM `flags`'));
- $global_res_needed = db_query('SELECT * FROM `flags`');
- while($global_row_needed = mysql_fetch_array($global_res_needed)) $global_needed[$global_row_needed['flag_name']] = $global_row_needed;
- function get_right($required) {
- $rechte = array();
- global $global_count;
- global $global_needed;
- #$rights hat als Wert die Rechte des Users z.b. wenn er Kommentare & News schreiben darf hat er 9!
- #$rights = 9;
- $rights = $_SESSION['userdata']['rights'];
- for($i = $global_count[0]; $i >= 0; $i--) {
- $wert = pow(2, $i);
- if($rights >= $wert) {
- $rechte[] = $wert;
- $rights -= $wert;
- }
- }
- if(in_array($global_needed[$required]['flag'], $rechte)) {
- return true;
- } else {
- return false;
- }
- }
- // Sollte all das nicht funktionieren kann ich auch nicht helfen, sry hab einfach keine zeit!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement