ďťż

System Group I Uprawnień funkcja porównująca x łańcuchów i wyciągająca największe wartości.

       

Podstrony


telcocafe

Sprawa wygląda tak:
Pobieram z bazy x grup użytkowników które ma przypisane użytkownik logujący się.
Każdej grupy w formacie - tych cyfr może być więcej i ma być więcej.
$g1 = 1351;
$g2 = 1317;
$g3 = 6746;
W tym przykładzie akurat zostały pobrane 3 grupy.
Każda cyfra odpowiada uprawnieniu, na przykład do edycji niusów na stronie. Chcę z tych zmiennych zawierających uprawnienia wyciągnąć większe wartości w tym przykładzie wyglądało by to tak:

$g1 = 1351;
$g2 = 1317;
$g3 = 6746;
Czyli nasza zmienna sesyjna z uprawnieniami to $zmienna = 6757;
Czy istnieje jakaś funkcja która jest w stanie porównać te ciągi cyfr i zwrócić najwyższymi cyframi w danym rzędzie ?



Nie wiem dokładnie o co chodzi z tym wyciąganiem ale:
<?php $liczba = 32345; //przykladowa $raz = 0; while($tablica[] = substr($liczba, $raz, 1)) $raz++; ?>
I teraz w tablicy $tablica masz wszystkie cyfry...
I wyciągasz większe... chociaz nie wiem czy o to Ci chodziło ;)

Ehh nie nie o to chodziło.
Nie wiem jak mam bardziej łopatologicznie to wyjaśnić.

masz dość zamotany system uprawnień ;) nie lepiej stosować tekstowe oznaczenia i pole tekstowe, np: news_edit|news_add|article_add i sprawdzać czy dana grupa czy dany user ma dane "uprawnienie".



Owszem jest on trochę zamotany ale czytając kod wordpressa i php-fusion dostałem szału bo wyłuskanie z tych cmsów potrzebnych infomacji graniczy z cudem. Uprawnienia będą przechowywane w zmiennej sesyjnej a dostęp do nich będzie miała metoda check_priv przyjmująca dwa parametry numer uprawnienia ( zdefiniowany stała w konfigu strony ) i minimalną liczbę jaka będzie musiała być żeby dostęp do zasobu został przyznany.
Wydaje mi się że dosyć to klarowne i jasne jest. Byłbym bardzo zobowiązany gdyby mi ktoś powiedział jak mam przefiltrować te cyfry i sprawdzić która jest większa.

AFAIK taki system jest zaimplementowany w PHP-Fusion, więc może tam zajrzyj w kod.

sprawdzanie uprawnień nie powinno bazować na danych "po stronie" użytkownika. Po potwierdzeniu zalogowania danego użytkownika powinieneś sprawdzić w bazie czy ma dostęp do danej czynności. Przechowywanie kluczowych danych w sesjach i cookie wiąże się z niebezpieczeństwem możliwości modyfikacji czy kradzieży cookie/sesji.
Poższa koncepcja z cyframi dla mnie jest całkowicie przekombinowana - przestawianie i szukanie większych cyfr. Potrzebujesz więcej kodu, większa szansa na błędy i luki. Proste jest piękne.

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.