Обучение/Помощь новичкам | Помогите в SELECT
shadrvlad ,
Вот авторизация:
<?php
include ("header.php");
if ( !empty($_POST['password']) and !empty($_POST['login']) ) {
$login = $_POST['login'];
$password = $_POST['password'];
$query = 'SELECT*FROM users WHERE login="'.$login.'" AND password="'.$password.'"';
$result = mysql_query($query);
$user = mysql_fetch_assoc($result);
if (!empty($user)) {
echo "Вы авторизованы"; setcookie("login", $user['login'], time()+86400*365);
setcookie("password", $user['password'], time()+86400*365);
header('location: /game.php');
}
else {
echo "ошибка";
}
}
?>
<form action='auth.php' method='POST'>
Ник: <br><input class="input" name='login'> <br>
Пароль: <br><input class="input" name='password' type='password'>
<br>
<input type='submit' value='Отправить'>
</form>
Вот авторизация:
<?php
include ("header.php");
if ( !empty($_POST['password']) and !empty($_POST['login']) ) {
$login = $_POST['login'];
$password = $_POST['password'];
$query = 'SELECT*FROM users WHERE login="'.$login.'" AND password="'.$password.'"';
$result = mysql_query($query);
$user = mysql_fetch_assoc($result);
if (!empty($user)) {
echo "Вы авторизованы"; setcookie("login", $user['login'], time()+86400*365);
setcookie("password", $user['password'], time()+86400*365);
header('location: /game.php');
}
else {
echo "ошибка";
}
}
?>
<form action='auth.php' method='POST'>
Ник: <br><input class="input" name='login'> <br>
Пароль: <br><input class="input" name='password' type='password'>
<br>
<input type='submit' value='Отправить'>
</form>
shadrvlad , Слушайте, а вот так работает:
$query = "SELECT * FROM `users` WHERE `login`='".$_COOKIE["login"]."'";
$result = mysql_query($query);
$user = mysql_fetch_assoc($result);
echo $user['money'];
Но разницы ведь нет по-моему.
$query = "SELECT * FROM `users` WHERE `login`='".$_COOKIE["login"]."'";
$result = mysql_query($query);
$user = mysql_fetch_assoc($result);
echo $user['money'];
Но разницы ведь нет по-моему.
DELETED
1 февраля 2018, в 10:14
Delete
создай еше 1 таблицу, и после авторизации генерируем рандомный токен и сохраняем в базу и ид пользователя и кеш токена и делать лимить генерации в 5 сек сменить токена... не украдут токена генеруемый
<?
/**
* @return integer
*/
function get_auth()
{
if (isset($_SESSION['hash_token'])) {
$res = get_connect()->prepare("SELECT * FROM `auth_accounts` WHERE `hash_token` = ? LIMIT 1");
$res->execute([$_SESSION['hash_token']]);
if ($account = $res->fetch()) {
$_SESSION['hash_token'] = md5($account['id_data_account'] . new_token());
$res = get_connect()->prepare("UPDATE `auth_accounts` SET `hash_token` = ?, `time` = ? WHERE `id_data_account` = ?");
$res->execute([$_SESSION['hash_token'], time(), $account['id_data_account']]);
return $account['id_data_account'];
} else {
unset($_SESSION['hash_token']);
}
}
return false;
}
/**
* @param $id_data_account
*/
function set_auth($id_data_account)
{
$res = get_connect()->prepare("SELECT * FROM `auth_accounts` WHERE `id_data_account` = ? LIMIT 1");
$res->execute([$id_data_account]);
$hash_token = md5($id_data_account . new_token());
if (!$data = $res->fetch()) {
$res = get_connect()->prepare("INSERT INTO `auth_accounts` (`id_data_account`, `hash_token`, `time`) VALUES (?, ?, ?)");
$res->execute([$id_data_account, $hash_token, time()]);
} else {
$res = get_connect()->prepare("UPDATE `auth_accounts` SET `hash_token` = ?, `time` = ? WHERE `id_data_account` = ?");
$res->execute([$hash_token, time(), $id_data_account]);
}
$_SESSION['hash_token'] = $hash_token;
}
________
посл. ред. 01.02.2018 в 10:48; всего 1 раз(а); by [J]ungle