Эх, сессия, а у меня ни одной лабы по php не сделано
Как можно проверить, просто юзер это или залогиневшийся юзер?
Как можно проверить, просто юзер это или залогиневшийся юзер?
Изменил(а) IgoRRReK 22.11.12 в 17:44
seg0ro, у нас тупо логин пароль, без шифрования и сессий, просто в открытую пароль в базе хранится, его можно видеть. Вот чел зашел, как дальше сделать, чтобы было видно, что это он
значит так, база `users` имеет такой вид:
код авторизации:
Проверка в начале скрипта:
Механизм авторизации только на сессиях!
|uid | login | password|
––––––––––––––––––––––––
| 1 | Admin | 1234567 |
<?php
if ($_POST['login'] && $_POST['password']){
$query = mysql_query("SELECT * FROM `users` WHERE `login` = '".mysql_real_escape_string($_POST['login'])."' AND `password` = '".mysql_real_escape_string($_POST['password'])."' LIMIT 1 ");
if (mysql_num_rows($query)){
$res = mysql_fetch_assoc($query);
$_SESSION['uid'] = $res['uid'];
$_SESSION['password'] = $_POST['password'];
echo '<p>Авторизация прошла.</p>';
}else{
echo '<p>Ошибка авторизации!</p>';
}
}else{
echo '<p><form action="" action="post">Логин: <input name="login" /><br />Пароль: <input name="password" /><br /><input type="submit" /></form></p>';
}
?>
<?php
if (!empty($_SESSION['uid']) && !empty($_SESSION['password'])){
$query = mysql_query("SELECT * FROM `users` WHERE `login` = '".mysql_real_escape_string($_SESSION['uid'])."' AND `password` = '".mysql_real_escape_string($_SESSION['password'])."' LIMIT 1 ");
if (mysql_num_rows($query)){
$res = mysql_fetch_assoc($query);
}else{
unset($_SESSION['uid']);
unset($_SESSION['password']);
}
}
?>
что то не робит...
<!DOCTYPE html PUBLIC "–//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml–mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
<head><title>лол</title></head>
<body>
<?
include("kernel.php"); //данные MySQL
?>
<?php
if (!empty($_SESSION['id']) && !empty($_SESSION['pass'])){
$query = mysql_query("SELECT * FROM `bd_lab1` WHERE `login` = '".mysql_real_escape_string($_SESSION['id'])."' AND `pass` = '".mysql_real_escape_string($_SESSION['pass'])."' LIMIT 1 ");
if (mysql_num_rows($query)){
$res = mysql_fetch_assoc($query);
}else{
unset($_SESSION['id']);
unset($_SESSION['pass']);
}
}
if ($_POST['login'] && $_POST['pass']){
$query = mysql_query("SELECT * FROM `bd_lab1` WHERE `login` = '".mysql_real_escape_string($_POST['login'])."' AND `pass` = '".mysql_real_escape_string($_POST['pass'])."' LIMIT 1 ");
if (mysql_num_rows($query)){
$res = mysql_fetch_assoc($query);
$_SESSION['id'] = $res['id'];
$_SESSION['pass'] = $_POST['pass'];
echo '<p>Авторизация прошла.</p>';
}else{
echo '<p>Ошибка авторизации!</p>';
}
}else{
echo '<p><form action="" action="post">Логин: <input name="login" /><br />Пароль: <input name="pass" /><br /><input type="submit" /></form></p>';
}
?>
</body>
</html>
а лекций нифига не было... ну как были, три, и я с интересом ходил, только что такое хост и домен в подробностях рассказали, дали методичку, сиди разбирайся...
Изменил(а) IgoRRReK 23.11.12 в 18:11