Witam, mam napisany prosty skrypt logowania, a calosc projektu podzielilem na moduly, nie wiem czy dobrze to robie ale dopiero sie ucze wiec troszke eksperymentuje moja strona index wyglada tak:
<?php
//skrypt strony glownej
include (\"inc/funkcje_dolacz.php\");
$login= $HTTP_POST_VARS['login'];
$haslo= $HTTP_POST_VARS['haslo'];
$action= $HTTP_POST_VARS['action'];
tworz_naglowek_html();
news();
blok1 ();
logowanie($login, $haslo, $action);
blok2 ();
ostatnio_dodane();
blok3 ();
sprawdz_uzyt ();
buttony();
tworz_stopke_html();
?>
funkcja logowanie wyglada tak:
<?php
function logowanie($login, $haslo, $action) {
echo \"<p class=\"tytul\">Logowanie</p>\";
if ($action==\"logowanie\") {
if (loguj ($login, $haslo)) {
$HTTP_SESSION_VARS[\"prawid_uzyt\"]= $login;
}
else {
echo \"nie mozna zalogowac\"; }
}
if (isset ($HTTP_SESSION_VARS[\"prawid_uzyt\"])) { echo \"Witaj \".$HTTP_SESSION_VARS[\"prawid_uzyt\"]; }
else if ($action==\"\" && $HTTP_SESSION_VARS[\"prawid_uzyt\"]==\"\") {
wyswietl_form_logowania();
}
}
?>
funkcja uwierzytelniajaca (loguj):
<?php
function loguj ($login, $haslo) {
$sql->connect();
$wynik= $sql->do_query (\"SELECT * FROM uzytkownicy WHERE uzytkownik='$login' AND haslo= password ('$haslo')\");
if ($wynik > 0) {
return true;
}
else {
return false;
}
}
?>
Na koniec zostaje mi jeszcze funkcja sprawdzajaca zalogowanie:
<?php
function sprawdz_uzyt () {
if (isset ($HTTP_SESSION_VARS[\"prawid_uzyt\"])) { echo \"Wszystko ok\"; }
else {
echo \"Nie posiadasz uprawnien do ogladania strony\"; }
}
?>
Tylko ta funkcja nigdy nie dziala i zawsze mi wyswietla Nie posiadasz uprawnien do ogladania strony, chociaz zmienna sesji jest zarejestrowana bo wyswietla mi sie Witaj ....", nie wiem co jest przyczyna? Dodam ze wszystkie te funkcje sa w innych plikach i sklejam je do kupy include()