Registrácia s rozdelením práv v PHP
Pri pridávaní práv používateľov potrebujeme vykonať
zmeny v našej registrácii. Teraz pri registrácii
používateľa musíme v INSERT dopise uviesť
jeho status.
Zvyčajne pri počiatočnej registrácii všetci používatelia
našej stránky dostanú najnižší status,
to znamená v našom prípade 'user':
<?php
$query = "INSERT INTO users
SET login='$login', password='$password', 'status'='user'";
?>
Vyššie statusy zvyčajne prideľuje administrátor. Ten v admin paneli vidí zoznam používateľov a môže kohokoľvek urobiť, napríklad, administrátorom.
Ako sa potom na stránke objaví prvý administrátor? Najjednoduchšie: zaregistrovať bežného používateľa a cez PhpMyAdmin ho urobiť adminom.
Zložitejšie: pri prvom spustení na hostingu spustiť inštaláciu stránky, opýtať sa pomocou formulára prihlasovacie meno a heslo a zaregistrovať toho úplne prvého používateľa stránky, ktorému priradiť status administrátora.
Zmeňte kód registrácie tak, aby všetci pridávaní
používatelia dostali status 'user'.
Ručne zmeňte nejakému používateľovi
jeho status na 'admin'. Autorizujte sa
týmto používateľom.
Vytvorte stránku admin.php, ku ktorej
budú mať prístup iba používatelia so
statusom 'admin'.
Zobrazte na stránke admin.php zoznam
všetkých registrovaných používateľov vašej
stránky vo forme tabuľky. Nech sú v tabuľke
dva stĺpce: prihlasovacie meno a status.
Upravte predchádzajúcu úlohu tak, aby sa objavil aj tretí stĺpec, s odkazom, pomocou ktorého admin bude môcť odstrániť ľubovoľného používateľa.
Upravte predchádzajúcu úlohu tak, aby riadky tabuľky s adminmi boli zafarbené na červeno, a s bežnými používateľmi - na zeleno.
Upravte predchádzajúcu úlohu tak, aby sa objavil ďalší stĺpec. V tomto stĺpci admin bude môcť meniť práva používateľov. Urobte to tak, aby pre všetkých bežných používateľov tam bola linka urobiť ho adminom, a pre admina - linka urobiť ho userom.
Urobte to tak, aby na všetkých stránkach webu, v hlavičke registrovaný používateľ videl svoje prihlasovacie meno a status.
Upravte predchádzajúcu úlohu tak, aby pre adminov v hlavičke stránky sa tiež zobrazovala linka na admin panel.