Mam zrobić prosty moduł dostępu skryptów, niestety mam parę problemów ale może najpierw kod :

users.php <=tutaj przechowuje login i hasła uzytkownikow.

<?php

$uzytkownicy = array(1 =>
array('login' => 'admin', 'haslo' => 'admin'),
array('login' => 'janek', 'haslo' => 'janek'),
array('login' => 'magda', 'haslo' => 'magda')
);

function czyIstnieje($login, $haslo)
{
global $uzytkownicy;

foreach($uzytkownicy as $id => $dane)
{
if($dane['login'] == $login && $dane['haslo'] == $haslo)
{
// O, jest ktos taki - zwroc jego ID
return $id;
}
}
// Jeżeli doszedłeś a tutaj, to takiego użytkownika nie ma
return false;
} 

session_start();
if(!isset($_SESSION['uzytkownik']))
{

$_SESSION['uzytkownik'] = 0;
}
if($_SESSION['uzytkownik'] > 0)
{
// Ktos jest zalogowany
echo 'Witaj, '.$uzytkownicy[$_SESSION['uzytkownik']]['login'].' na naszej stronie!'; 
}
else
{
// Niezalogowany
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(($id = czyIstnieje($_POST['login'], $_POST['haslo'])) !== false)
{

$_SESSION['uzytkownik'] = $id;
echo 'Dziekujemy, zostales zalogowany! <a href="index.php">Dalej</a>';
}
else
{
echo 'Podales nieprawidlowe dane, zegnaj! <a href="index.php">Dalej</a>';
} 
}
else
{

}
}

?> 

perms.php <=prawa grup do skryptow

 <?php 
global $PERM;
$PERM['skrypt1.php'] = 'admin';
$PERM['skrypt2.php'] = 'user';
$PERM['skrypt3.php'] = 'user';

?>

grupy:

 <?php 

$grupy = array(1 =>
array('login' => 'admin', 'grupa' => 'admin'),
array('login' => 'janek', 'grupa' => 'user'),
array('login' => 'magda', 'grupa' => 'user')
);

plik auth.php ktory ma byc dołączany na początku skryptu. W tym pliku sprawdzane jest czy uzytkownik ma dostep do pliku.

<? 
session_start();
include 'users.php';
include 'groups.php';
include 'perms.php';

$file = basename($_SERVER[PHP_SELF]);

global $grupy;
global $GrupaT;

foreach($grupy as $grupa => $da)
{
if( $uzytkownicy[$_SESSION['uzytkownik']]['login'] == $da['login'] )
{
$GrupaT = $da['grupa'];
return $GrupaT;

}
}

function spr($grupa, $plik)
{
if($PERM[$plik]==$grupa)
{
return;
} 
else{ echo"Nie masz dostepu do tego pliku"; 

}

}
spr($GrupaT,$file);

?> 

Na razie nie jest to kompletna autoryzacja, ale i ona nie działa. Dostep do skryptu skrypt1.php powinien miec dostep tylko admin wiec sprawdzam czy przypisana grupa do pliku skrypt1.php zgadza sie z grupą do jakiej nalezy admin jesli tak to return i funkcja się przerywa i admin widzi skrypt jesli zalogowany jest ktos inny kto chcial otworzyc skrypt1.php powinien wyswietlic sie komunikat "Nie masz dostepu do tego pliku". Niestety obojetnie na ktore z 3 kont sie zaloguje i otworze skrypt1.php to skrypt i tak sie wykonuje. Jakis podpowiedzi, rady ?