Jump to content
php.lv forumi

Recommended Posts

Posted

Līdz šim projektos, kur vajadzēja specifiskas atļaujas noteiktiem lietotājiem, lai piekļūtu administratīvām darbībām, es izmantoju sistēmu, kur katrai atļaujai ir savs lauks atļauju tabulā šādi: zinas-enum(0,1), lietotajie-enum(0,1) etc. Ļoti sarežģīti uzturēt, ja jāuztaisa jauna sadaļa.

 

Pirms kāda laika pētīju php error_reporting() un ieraudzīju šādu ģeniāli vienkāršu sistēmu(nosaukums nebija minēts, tieši tapēc problēma, jo nevaru atrast materialus google), kur mēs saglabājam tikai vienu int vērtību lietotājam, kas ir summa no katras kategorijas skaitļa attiecīgi:

 

zinas => 1

lietotaji => 2

komentari=>4

 

Ja vēlamies, lai lietotājs var piekļūt tikai ziņām un komentāriem summa ir 5. Izveidot saskaitīšanu nav problēmu.

 

Galvenā problēma ir tā, ka pašlaik es nevaru izdomāt pareizo formulu, kā izvadīt atļaujas, jo visos meiģinājumos kaut kas nebija precīzi un kods izvadīja arī kategorijas, kurām nav pieejas, vai neizvadīja vajadzīgo.

Posted (edited)

es jau forumā postēju `opciju saglabāšanu`..

 

Koroč:

 

$permsArr = Array(
 1 => 'Users',
 2 => 'SysConfig',
 4 => 'News',
 ....
);

foreach (.. $permID => $permName)
{
echo $permName . (($permID & $userPerms) ? '- OK' : '- No Access';
}

Edited by Delfins
Posted
zinas => 1

lietotaji => 2

komentari=>4

Nepateiksu preciizu nosaukumu bet taas ir baitu operaacijas

1,2,4,8,16,32...

Pameklee jaabuut (iebuvetajaam) f-jam() kas tev apstraadasa datus abos virzienos.....

Posted

Nja.. te nu redzams, ka programmēšana nav sākusies no paskāla/C, bet uzreiz skriptu valodā programmēts. Zemā līmenī cilvēki atradinājušies domāt - bitos un baitos, and, xor, or, not, ... Tur pat nav funkcijas jāzin, ar prastiem operatoriem pietiek: &, ^, |, ~, <<, >>.

  • 1 year later...
×
×
  • Create New...