Mám stránku ktorá je robená cez PHP a Mysql, je tam normálne registrácia a prihlásanie, všetko funguje správne, a pokial sa niekto prihlási, tak ho to hodí na dajme tomu "prihlaseny.php" ale pokial by som sa prihlásil pod menom napr "janko" tak by ma to hodilo na "admin.php".
Dalo by sa to nejako lahko vyriešiť? Najlepšie cez Mysql, pretože v mysql mám tabulku "users" kde su vymenovaný uživatelia, a každý tam má napísaný mail a podobné veci a dal som tam aj práva. Pokial je admin tak tam má "1" a pokial normalny uživatel tak "0" a neviem ako vyriešiť moj problém. Dúfam že mi niekto pomôže a neodpíše ma tu nikto neodfajčí že som lama a podobne...
Prístup do sekcie len adminovi
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
neviem ako konkrétne máš to prihlasovanie a celkovo celú štruktúru stránky, ale podstata je takáto:
overím či sa našla kombinácia meno-heslo v databáze. Ak áno, vytiahnem si všetky dáta a uložím do session (nemusíš, ale zrejme každý z tých udajov budeš používať tak aby si to nemusel dolovať znova). Ak je $_SESSION['prava'] === 0 tak buď presmeruješ alebo includneš jednu stránku, ak je to === 1 tak includneš alebo presmeruješ na druhú (tú kde môže len admin). Aby si nepovolaná osoba nemohla adminovskú stránku zobraziť priamo naťukaním adresy, treba dať na začiatok tej stránk niečo ako:
overím či sa našla kombinácia meno-heslo v databáze. Ak áno, vytiahnem si všetky dáta a uložím do session (nemusíš, ale zrejme každý z tých udajov budeš používať tak aby si to nemusel dolovať znova). Ak je $_SESSION['prava'] === 0 tak buď presmeruješ alebo includneš jednu stránku, ak je to === 1 tak includneš alebo presmeruješ na druhú (tú kde môže len admin). Aby si nepovolaná osoba nemohla adminovskú stránku zobraziť priamo naťukaním adresy, treba dať na začiatok tej stránk niečo ako:
Kód: Vybrať všetko
<?php
session_start();
if($_SESSION['prava'] != 1) exit();
?>Díky, neskôr to vyskúšam, aj keď to mám robené cez cookies ale podstata je cca rovnaká...
Ale myslím si že lepšie by to bolo, keby sa pri každom prihláseni skontrolovalo v databaze okrem mena a hesla, aj pole s právami, a pokial by to bolo 1, tak by to hodilo uživatela na admin, a pokial 0 tak na klasickú stránku.
Ale myslím si že lepšie by to bolo, keby sa pri každom prihláseni skontrolovalo v databaze okrem mena a hesla, aj pole s právami, a pokial by to bolo 1, tak by to hodilo uživatela na admin, a pokial 0 tak na klasickú stránku.
-
xivo
Light Professional
- Príspevky: 752
- Registrovaný: 27 jún 2005, 22:49
- Bydlisko: Slovensko
- Kontaktovať používateľa:
Asi ani nie .. kedze cookies sa daju menit (velmi jednoducho) :-/ a presne tak musis mat v DB nieco ako ci je admin alebo nie .... inac to hadam ani nejde ...janko777 napísal:Díky, neskôr to vyskúšam, aj keď to mám robené cez cookies ale podstata je cca rovnaká...
Ale myslím si že lepšie by to bolo, keby sa pri každom prihláseni skontrolovalo v databaze okrem mena a hesla, aj pole s právami, a pokial by to bolo 1, tak by to hodilo uživatela na admin, a pokial 0 tak na klasickú stránku.
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
veď to isté som ti napísal aj jajanko777 napísal:Díky, neskôr to vyskúšam, aj keď to mám robené cez cookies ale podstata je cca rovnaká...
Ale myslím si že lepšie by to bolo, keby sa pri každom prihláseni skontrolovalo v databaze okrem mena a hesla, aj pole s právami, a pokial by to bolo 1, tak by to hodilo uživatela na admin, a pokial 0 tak na klasickú stránku.
a cez cookies to nerob. Ako bolo spomenuté daju sa ľahko meniť.