Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: BBCode, Ukryta wiadomość dla Administracji
Forum PHP.pl > Forum > PHP
maly_pirat
Hej, chciałbym uzyskać efekt bbcode, że treść będzie widoczna tylko dla ekipy, a jeśli nie masz odpowiednich uprawnień wyświetli Ci informacje "blad, brak uprawnień".

Oto kod -> click
Aktualnie wszystko jest ok, ale gdy nie mamy uprawnień NIC się nie pojawia, a chciałbym w jakiś sposób umieścić informacje o braku uprawnień.

EDIT:
Coś czuje, że nie da się wykonać potrzebnego mi efektu, więc może coś innego? W jaki sposób polecacie rozwiązać problem, że po dodaniu tagu [hide] bądź [mod] wyświetli się treść dla administracji, a dla osób spoza @, info o braku uprawnień.
thek
Na Twoim miejscu przemyślałbym ten warunek, bo to on Ci bruździ winksmiley.jpg
Nie masz tam logicznie określonego kto ma tak naprawdę widzieć ową wiadomość. Bo jak sprawdzisz $row['ranga'] na niezalogowanych?
Lepiej popatrz jak masz ustawione dane tyczące uprawnień i według nich kombinuj. Zapewne są one w sesji schowane i tam w zalezności od ich poziomu uprawnień wstawiaj wyświetlanie (lub nie). Te zmienne to zazwyczaj aliasy na wartości liczbowe (tak się robi najczęściej) o zwiększającej się liczbie:
0 - SUPERADMIN
1 - ADMIN
2 - SUPER MOD
3 - MOD
4 - USER
5 - GUEST
Niektórzy robią większe odstępy by umożliwić sobie wstawianie dodatkowych rang będących wyżej niż USER i wtedy są luki pomiędzy nimi w stylu 0, 1, 5, 10, 100, 101, bo wtedy można ustawiać zalogowanym userom dodatkowe uprawnienia, czy tworzyć grupy userow z konkretnymi uprawnieniami. Tak czy inaczej jeśli $_SESSION['ranga'] < GUEST to wyświetla to co jest w [hide], a gdy $_SESSION['ranga'] < USER ( lub, gdy mamy coś pomiędzy user a mod, $_SESSION['ranga'] <= MOD ) powinna wyświetlać dodatkowo to, co jest w tagach [mod] smile.gif Ale wszystko oczywiście zależy od tego jak jest rozwiązany system uprawnień. I to do niego musisz się dopasować. Rozwiązań w zależności od tego systemu może być wiele i musisz go poznać by moc stworzyć prawidłowe instrukcje sterujące.
Fafu
wg tego kodu usuwasz wszystko miedzy [mod] a [/mod]
  1. $message = preg_replace("#\[mod\](.*?)\[/mod\]#si", "", $message);

poprostu zamien na
  1. $message = preg_replace("#\[mod\](.*?)\[/mod\]#si", "Brak uprawnien", $message);
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.