Cytat
Git? w czym? używaniu like?
Wszystko w tym wypadku jest gitarra o ile nie musisz używać tego do więcej niż kilku opcji. Bo potem naraz tworzy ci się zylion kolumn, ify też ci się rozrastają bo zamiast zrobić
np. 5 >$uprawnienia >1, to tworzysz cztery warunki z and....
to jak naprawianie auto poksyliną ;P
Czy ty w ogole wiesz co mowisz?
Kod logowania nie z zbyto rozbudowany:
<?php
if(!empty($_POST['login']) && !empty($_POST['pass']) && isset($_POST['loguj'])) {
if($db = mysql_connect($pasy['host'], $pasy['login'], $pasy['haslo'])) {
if($tab['login'] == $login && $tab['pass'] == $pass) {
}
else echo('<table align="center"><tr><td class="contents" align="center"><b style="color:#f00">Podales zly login i/lub haslo.</b></td></tr></table>'); }
else echo('<table align="center"><tr><td class="contents" align="center"><b style="color:#f00">Polaczenie z baza niemozliwe.</b></td></tr></table>'); }
?>
Samo sprawdzanie praw podczac jakiejs czynnosci wyglada tak:
<?php
//na samym poczatku strony
$function = explode('|', $_COOKIE['uprawnienia']);
//np sprawdzanie czy sa prawa podczac tworzenia miniaturek:
if(!empty($_POST['x']) && !empty($_POST['y']) && isset($_POST['resize'])) {
$x = (int)$_POST['x'];
$y = (int)$_POST['y'];
if($_POST['new_y'] == 'yes') $new_name_file = $_POST['new_name']; else $new_name_file = $_POST['old_name_file'];
resize($_POST['old_name_file'], $_POST['extension'],$x, $y, $new_name_file, $_POST['quality']);
}
else echo('<table align="center"><tr><td align="center"><b style="color: #000000">Zly typ danych dla szerokosci i wysokosci img.</td></tr></table>'); }
else echo('<table align="center"><tr><td align="center"><b style="color: #000000">Nie masz uprawnien.</td></tr></table>'); }
?>
Prawa w bazie wygladaja tak prawo|inne_prawo|etc...
Dodaje prawa user'ow za pomoca checkbox'ow bo mam taka potrzebe w moim systemie plikow oczywiscie mozna je inaczej przypisywac
Co do prawa numerycznych tak samo to wyglada jest kolumna Prawa a w niej wartosci od 1 do 4 przy kazdej czynnosci jest sprawdzenie czy $_COOKIE['prawa'] > 4 zeby robic czynnosci Administratora
Oczywiscie wszystkie jest bezpieczne gdy na kazdej stronie jest sprawdzenie czy dane z cookie sa takie same jak te z bazy, i nikt nie mowi o tworzeniu kilkanascie kolumn to ty to sobie ubzdurales.
Cytat
Gdzie $_SESSION['dostep'] (pobierane jest z db z komórki 'poziom_dostepu' przy logowaniu) to:
- Admin
- Moderator
- VIP
- User
Oczywiscie takie cos jest wolniejsze niz operacje na INT ale i tak nie widac roznicy

P.S zreszta kazdy ma swoje moetody i dla niego wlasna jest zawsze najlepsza wystarczy ja dobrze zabezpieczyc a implementacja zalezy juz od czlowieka