xmas12 Posted June 21, 2009 Report Share Posted June 21, 2009 Nu pavisam vienkārš variants: Reģistrējoties automātiski ieliec lietotāju par user (0), bet ja vajag pēc tam datubāzē ieliec 1 (pieņemsim, ka šitais ir mods), 2 (pieņemsim, ka šitais ir admins) un tā tālāk grupu. Pēc tam mājaslapā, kad lietotājs piesakās mājaslapā, sesijā (group) uzstādi viņa lietotājgrupu, kuru tu izvelc no datubāzes. Un tad jau mājaslapā viss skaidrs: if($_SESSION['group']==0) { echo "Sveiks, lietotāj. <br />Tavs Profils<br />Forums"; } if($_SESSION['group']==1) { echo "Sveiks, moderator.<br />Pārskatīt ierakstus<br />Rediģēt ierakstus<br />"; } if($_SESSION['group']==2) { echo "Sveiks, administrator. <br />Kontroles Panelis<br />Lietotāju rediģēšana"; } Tas ir, ja katrai grupai vēlies savādāks. Vari arī savienot un ņemties kā vien gribi: if($_SESSION['group']==0 || $_SESSION['group']==1) { echo "Sveiks, lietotāj. <br />Tavs Profils<br />Forums"; } if($_SESSION['group']==2) { echo "Sveiks, administrator. <br />Kontroles Panelis<br />Lietotāju rediģēšana"; } Vienkārš variants, bet nodomāju ierakstīt. Cik tāds vispār ir drošs, ja tā padomā? Tieši sito mekleeju. bet es vinu ielieku savaa majas lapa kad ielogojas tad paradas izvelne profila un tur arii ieliku otro kodu. bet man radas šāds erors : Notice: Undefined index: group in C:\AppServ\www\6v\index.php on line 187 Sveiks, lietotāj. Tavs Profils Forums Notice: Undefined index: group in C:\AppServ\www\6v\index.php on line 190 Un kas jataisa datubaaze group vai kkas taads? Quote Link to comment Share on other sites More sharing options...
404 Posted June 25, 2009 Report Share Posted June 25, 2009 Ja augstākiem leveliem ir atļautas tās pašas darbības,kuras tekošajam,tad,lai nav katram atsevišķi if($_SESSION['group']== jāčeko,tad dažās vietās var racionālāk to organizēt,rakstot if($_SESSION['group']>=$vajadzigais_level) Tad visiem sākot no šī līmeņa līdz pat adminam tajā vietā būs pieeja automātiski. Par to $_SESSION['group'] - vai tad drošāk un ērtāk nav to level ciparu nolasīt pie reizes kopā ar pārējiem usera datiem,nodefinēt kā konstanti(kā Aleksejs ieteica) un nemaz sesijā viņu nelikt? Tāpat lapu izsaucot būs kaut kāds autorizācijas scenārijs,kur to levelu mierīgi var nočekot un tālāk jau kā konstanti izmantot pārbaudēs. Quote Link to comment Share on other sites More sharing options...
Peeter Posted April 16, 2010 Report Share Posted April 16, 2010 Sveiki, man ir viens jautājums. Lietotāja pieejas limeni 10, 20 ... saglabāt sesijā vai ir kāds labāks variants? Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 16, 2010 Report Share Posted April 16, 2010 Lietotāja līmenis tiek glabāts DB. Kad lietotājs tiek autentificēts, tad līmeni var glabāt kā sesijas mainīgo. Ja ļoti negribas izmantot sesijas, tad var katru reizi raustīt DB (atkarībā no tā, kāda datu bāze tiek izmantota, nav nepieņemams variants), vai arī glabāt pie lietotāja, bet tad šie dati paši par sevi ir kaut kādā veidā jāautentificē jāaizsargā pret patvalīgu izmaiņu veikšanu. Quote Link to comment Share on other sites More sharing options...
Pentiums Posted April 30, 2010 Report Share Posted April 30, 2010 iall , ne shis kods nav ne no kada php-fusion ... nestāsti te muļķības Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.