Kako provjeravati status korisnika (dali je korisnik admin)

Pozdrav!

Na koji način vi provjeravate status korisnika?

Dali pri logovanju spremate u sesiju status korisnika ili provjeravate u bazi?

Dok sam radio proceduralno pri logovanju korisnika na sajt u sesiju sam upisivao njegov id

i sa tim id provjeravao u bazi status korisnika.

Npr. imao sam jednu datoteku koja je bila includana u sve stranice header.php

i sad provjeravam dali je korisnik admin

E sad radim jedan sajt u CodeIgniter frameworku pa me zanima na koji način vi provjeravate korisnika?

Znaci damije napravit da nemam puno upita na bazu.

Hvala

U kodignajteru? Napravi funkciju u nekom auth modelu koji koristiš is_staff, is_admin, is_mod, etc, koju god želiš, i samo pozivaš u kontroleru. Recimo ja radim ovako, ako je korisnik logiran upalim keš i prikupim njegove podatke i u neku statičnu varijablu, da ne moram svaki put kad refreša ponovo dohvaćati iz baze, i u modelu samo provjeravam koji mu je status u toj varijabli.

btw, nemoj koristiti $_SESSION ako radiš sa codeigniterom i pogotovo ne ovaj način na koji pišeš, imaš biblioteke za take stvari.

sad nez taj framework, tj ne radim s frameworkeom, za sada sam radio dva velika tipa projekta pa sam si sam tako recimo napravio framework za njih…

ja radim klasu session iz nje poziva, naravno napravio sam varijable private i onda ih samo odredjenom funkcijom provjeravam i to je prvo sto pozivam u svakom dijelu za koji je potreban admin…

pr:

class Sesion {
    private Admin;
    __construct() {
		session_start();
        if(!$this->Jel_Admin()) 
        {//nije admin
             redirektiraj(//moja custom funkcija za header preusmjerenje i exit;);
        }
    }
    public function Jel_Admin(){
		if(isset($_SESSION['admin'])>true)
		return true;
		else return false;
	}
}

ovako sigurno neces zaboravi provjerit jel admin, a provjerava odmah na constructu klase… najbolji po meni način… tako sa svakom klasom kad radim ako nekome ne želim dati rad s njom onda u __construct-u provjeravam odobrenje…


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja