Sesje

0

mam problem: <ort>Hciałem </ort>zrobić system logowania userów wg. Artu, który jest w tym serwisie. Napisałem sobie plik users.php o treści:

<?php
function getUser()
{
session_start();

if (!$user)
{
 return "-1";
}
else
{
return $user;
}

function logon($userName, $userPass)
{
 sesstion_start();
 if (($userName=="test") && ($userPass=="test"))
 {
   $user=$userName;
   session_register("user");
   return true;
  }
 else
 {
  return false;
  }
?>

Potem stworzyłem plik zawierający formularz:

<form action="logon.php" Method="POST">
User:<br>
<input name="userName"><br>
Password:<br>
<input type="password" name="userPass">
<br><input type="submit" value="OK">

i plik logujący logon.php:

<?php
include_once("users.php");

if (logon($userName, $userPass))
{
 print "Zalogowany<br>";
 print "<a href=index.php>Strona glówna</a>";
}
else
{
print "blad!!!";
}
?>

i w końcu plik index.php:

<?php
include_once("users.php");
$userName = getUser();

if ($userName=="-1")
{
 print "Musisz się zalogować!!!<br>";
 print "<a href=logon.html>logowanie</a>";
}
else
{
print "Witaj " . $userName";
}
?>

Moje pytanie jest takie:
Dlaczego po wypełnieniu formularza wyskakuje napis "ZALOGOWANY", a po kliknięciu na link (do strony index.php), wyskakuje że nie jestem zalogowany. [sciana] . Gdzie może być błąd. W treści skrypty, czy konfiguracji serwera?
Dodam jeszcze że stronę testuje stronę na Aurox Linux,
wersja php 4.2.3
Apache 1.3

HELP!!!

0

"Hciałem" :D

Sprobuj uzyc tablic globalnych $_SESSION['zmienna'], $_POST etc ....

0

Ja bym sugerował dodać

function getUser()
{
session_start();
global $user;

ale całości nie przewertowałem

1 użytkowników online, w tym zalogowanych: 0, gości: 1