 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
.joaffx
Data înscrierii: 21/Mai/2008
Mesaje: 43
Locație: 127.0.0.1
|
| Trimis: Mie Mai 21, 2008 4:12 am Titlul subiectului: algoritm - permisii restrictionate |
|
|
Salut,
Cum scoala e pe sfarsite iar vacanta e ca si venita , m-am gandit sa ma apuc sa scriu o aplicatie :D.Momentan sunt la faza de planificare ..
Am nevoie de putin ajutor cu un algoritm daca este cineva amabil sa ma ajute :D.
Deci vreau sa scriu o aplicatie asa :
- grup Administrator care va avea permisii de vizualizare/editare/sterge asupra tuturor paginilor.
- grup Agent care va avea permisia sa vizualizeze doar pagina lui Muncitor_id ( agent va fi un fel de sef care va putea sa vada 1 singura pagina , cea a muncitorului sau )
- grup Muncitor care va avea permisia sa isi vizualizeze doar propria pagina.
In total vor fi aproximativ 2 administratori si cateva sute de Agenti si Muncitori.
de exemplu daca avem : muncitor[punct]php ? id=Alex , atunci aceasta pagina va putea fi vizualizata doar de muncitorul Alex,Agentul lui Alex si de Administrator.
sau daca este muncitor[punct]php ? id=Victor , tot asa, va putea fi vizualizata doar de muncitorul Victor , de Agentul lui Victor si de Administrator.
Cam asta ar fi cerinta :)
Eu ma gandisem asa :
- daca autentificarea este corecta atunci usernameul autentificat este trecut intr`o variabila superglobala $_SESSION['user'] = $user , asta in pagina autentificare.php
- in pagina muncitor.php , compar daca $_GET['id'] este identica cu $_SESSION['user'] iar daca nu ii interzic accesul , deci daca el s a autentificat cu user Mihai iar get`ul muncitor.php?id=Mihai nu este adevarat atunci ii interzic accesul.
astea ar fi pt. grupul Muncitor .. insa pentru Agent nu stiu cum sa fac sa ii restricitonez accesul doar la 1 singura pagina , cea a angajatului sau.
Astept un raspuns :D , daca am comis vreo greseala gramaticala imi cer scuze , am dormit doar 4 ore. |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 1421
Locație: Sibiu
|
| Trimis: Mie Mai 21, 2008 8:54 am Titlul subiectului: |
|
|
| Foarte simplu. Cand se intra pe o pagina de angajat, verifici sesiunea, respectiv ce user e logat. Daca userul respectiv este agentul respectivului angjat, ii arati pagina, daca nu il zbori intr-o pagina de Forbidden. |
|
| Sus |
|
.joaffx
Data înscrierii: 21/Mai/2008
Mesaje: 43
Locație: 127.0.0.1
|
| Trimis: Mie Mai 21, 2008 9:58 am Titlul subiectului: |
|
|
Cum fac ca sesiunea lui Alex si a lui Agent_Alex sa fie identica ? [ sesiunea va fi inregistrata cu o valoare primita prin $_POST
Eu ma gandeam asa :
- la Angajati le inregistrez sesiunea in functie de username adica
$user = $_POST['user'] iar dupa ii dau session_register($user)
- la Agenti e ceva mai dificil ca trebuie sa inregistrez sesiunea cu o valoare identica cu a angajatului sau pentru ca doar ei 2 + adminul sa aibe acces la pagina. Ma gandeam ca inainte sa inregistrez sesiunea pentru Agent sa fac un select in db ex :
$agent = mysql_escape_string($_POST['agent'])
$val = mysql_query("select `nume_angajat` from tabel where nume_agent = $agent");
iar apoi sa ii dau session_register($val);
Dupa ce am am inregistrat sesiunea compar daca $_GET['page'] = = cu sesiunea inregistrata.
este buna ideea ? |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|