metal_head
Registered
Здравейте. Опитвам се да направя елементарна логин система, но все нещо ме спира. В случая вече нямам никакво обяснение защо не се получава.
Накратко в конфигурационния файл имам стартирана сесия и отдолу две променливи:
След това във файла на хедъра си (който се инклуудва след конфигурационния файл) имам една проверка:
Тоест ако нямам $username и $password да ми покаже формата за логин (която е с метод post).
До тук добре. Сега аз си записвам данните във формата за логин и цъкам бутончето за събмит. Кода ме препраща на страницата, където ще ми се провери дали потребителя ми и паролата са валидни. Там взимам данни от базата данни:
След това се правят проверки и ако всичко е наред, накрая идва регистрацията в сесията:
Тук съм сложил echo, за да ми покаже какви данни регистрирам.
Проблема е, че echo-то си показва името на потребителя (което е взето от базата данни), паролата също, но в сесията нищо не се променя и $username и $password съответно остават празни. Следователно и формата за логин в хедъра остава.
Какъв е проблема тук?
:roll:
Накратко в конфигурационния файл имам стартирана сесия и отдолу две променливи:
Код:
$username = $_SESSION['username'];
$password = $_SESSION['password'];
След това във файла на хедъра си (който се инклуудва след конфигурационния файл) имам една проверка:
Код:
if(!$username && !$password) login_form();
else echo "Здравей, ".$username;
Тоест ако нямам $username и $password да ми покаже формата за логин (която е с метод post).
До тук добре. Сега аз си записвам данните във формата за логин и цъкам бутончето за събмит. Кода ме препраща на страницата, където ще ми се провери дали потребителя ми и паролата са валидни. Там взимам данни от базата данни:
Код:
$logname = $_POST['username'];
$logpassword = md5($_POST['password']);
$result = mysql_query("SELECT * FROM users WHERE username='$logname'");
$row = mysql_fetch_array($result);
$user = $row['username'];
$pass = md5($row['password']);
След това се правят проверки и ако всичко е наред, накрая идва регистрацията в сесията:
Код:
session_register("username", $user);
echo "<br> Username registered in session as ".$user;
session_register("password", $pass);
echo "<br> Password registered in session as ".$pass;
Тук съм сложил echo, за да ми покаже какви данни регистрирам.
Проблема е, че echo-то си показва името на потребителя (което е взето от базата данни), паролата също, но в сесията нищо не се променя и $username и $password съответно остават празни. Следователно и формата за логин в хедъра остава.
Какъв е проблема тук?
:roll: