chcę wprowadzić autoryzację na stronie. Mam poniższy niby prosty skrypt, ale z niewiadomych dla mnie powodów po wprowadzeniu dobrych danych do logowania nie można odczytać zmiennych wprowadzonych do sesji. Po prostu jakbym wcale ich nie utworzył. Mam już dość. Tyle czasu nad tym siedzę i nie mogę znaleźć błędu. Zapewne to jakiś drobiazg. Zerknijcie co jest nie tak.
Kod
session_start();
function autoryzacja(){
$login = addslashes($_POST['login']);
$password = addslashes($_POST['password']);
$link_id = addslashes($_POST['link_id']);
$pr = mysql_query( "SELECT * FROM sbase WHERE nick = '$login' AND password = '$password' LIMIT 1 " );
if(mysql_num_rows($pr) > 0)
{
$_SESSION['zalogowany'] = true;
$_SESSION['link_id'] = $link_id;
}else
formularz_logowania();
}
if (!$_SESSION['zalogowany'])
autoryzacja();
function formularz_logowania(){
...
exit();
}
function autoryzacja(){
$login = addslashes($_POST['login']);
$password = addslashes($_POST['password']);
$link_id = addslashes($_POST['link_id']);
$pr = mysql_query( "SELECT * FROM sbase WHERE nick = '$login' AND password = '$password' LIMIT 1 " );
if(mysql_num_rows($pr) > 0)
{
$_SESSION['zalogowany'] = true;
$_SESSION['link_id'] = $link_id;
}else
formularz_logowania();
}
if (!$_SESSION['zalogowany'])
autoryzacja();
function formularz_logowania(){
...
exit();
}
Zarówno 'zalogowany' jak i 'link_id' nie istnieją po przejściu formularza.
