Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem PHP - Admin/Member prostředí

Zdravím, potřeboval bych pomoci s PHP funkcí, která by uživatelovi s hodností "admin" zobrazila obsah ale uživateli "uživatel" ne. Jak to tedy myslím? Mám stránku na kterou se dostane jak admin tak uživatel, ale pak mám administraci a tam chci aby se dostal pouze admin. Může mi prosím někdo poradit, jak toho docílit v tomto scriptu?

user.php

<?php
include('password.php');
class User extends Password{

private $_db;

function __construct($db){
parent::__construct();

$this->_db = $db;
}

private function get_user_hash($nick){

try {
$stmt = $this->_db->prepare('SELECT heslo FROM uzivatele WHERE nick = :nick AND aktivni="Yes" ');
$stmt->execute(array('nick' => $nick));

$row = $stmt->fetch();
return $row['heslo'];

} catch(PDOException $e) {
echo '<p>'.$e->getMessage().'</p>';
}
}

public function login($nick,$heslo){

$hashed = $this->get_user_hash($nick);

if($this->password_verify($heslo,$hashed) == 1){

$_SESSION['loggedin'] = true;
return true;
}
}

public function logout(){
session_destroy();
}

public function is_logged_in(){
if(isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true){
return true;
}
}

}

?>

login.php

<?php
//include config
require_once('includes/config.php');
include 'header.php';

//check if already logged in move to home page
if( $user->is_logged_in() ){ header('Location: index.php'); }

//process login form if submitted
if(isset($_POST['prihlasit'])){

$nick = $_POST['nick'];
$heslo = $_POST['heslo'];

if($user->login($nick,$heslo)){
$_SESSION['nick'] = $nick;
header('Location: profile.php');
exit;

} else {
$error[] = 'Neplatné přihlašovací jméno nebo heslo.';
}

}

?>

Toto je celý script, který by mohl být nějak upravený. V config.yml mám ještě vytvoření třídy User. Následně pak ověřuji přístup na stránky pomocí "if(!$user->is_logged_in()){ header('Location: login.php'); }". V databázi mám hotovou tabulku s název hodnosti, tudíž zbývá jen vytvořit funkci. Bohužel se s tím piplám již druhým dnem, a nic není 100%. Proto bych poprosil vaší pomoc. Díky.

Předmět Autor Datum
Nenašly se žádné odpovědi.

Zpět do poradny Odpovědět na původní otázku Nahoru