Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL][XML]uprawnienia do podglądu wybranych plików xml
Forum PHP.pl > Forum > Przedszkole
adek-
Witam, mam w php panel logowania oparty na sesjach, gdzie mam np 5 użytkowników. Zrobiłem sobie też uploaderek plików XML z pewnymi danymi z komputera na serwer, który mi wrzuca automatycznie co 5 min uaktualnionych parę plików np: plik1, plik2, plik3... etc! Ogólnie nazwy max 8 liter + 3 rozszerzenie, tutaj .xml.
teraz zastanawiam się jak zrobić aby nadać użytkownikom uprawnienia do oglądania poszczególnych plików... np użytkownik 1 widział plik 1,2 i 3, a użytkownik 2 widział plik 4,5 i 6, a np. użytkownik 3 pliki 1,4 i 7?

w bazie danych użytkowników zrobić tabelę uprawnienia jako INNER, LEFT JOIN, bądź jakieś inne połączenie do tabeli użytkowników, gdzie będę przechowywał nazwy plików które ma widzieć użytkownik o danym id?
taka moja pierwsza myśl, czy jest na to jakiś lepszy pomysł?

Pliki będą widoczne nie jako w katalogu, tylko ich zawartość przeparsowana i wyświetlana w php.
jaslanin
nie ma chyba innej opcji, w tym pliku:

Cytat
Pliki będą widoczne nie jako w katalogu, tylko ich zawartość przeparsowana i wyświetlana w php.


Sprawdzasz z bazą danych (tabele potrzebne to user, file, user_file_ties ) czy ma pozwolenie na oglądanie i jeżeli tak to wyświetlasz, jeżeli nie to nie. W folderze z plikami XML robisz .htaccess który blokuje dostęp poprzez URL do XML.
CuteOne
Kilka spostrzeżeń co do Twojego pomysłu
1. Ilość plików nie jest zbyt duża - ilość rekordów w uprawnieniach rośnie wykładniczo (ilość plików * uprawnienia dla każdego użytkownika)
2. Użytkownicy nie mają bezpośredniego dostępu do plików (ewentualnie przyda się mod_rewrite do ukrycia linków)
3. Podział użytkowników na role zmniejszy ilość rekordów i ułatwi zarządzanie

W zasadzie takie sprawy rozwiązuje się właśnie w sposób podany przez Ciebie smile.gif
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.