@AlexP11223 говорю же, pdo пользуюсь недавно и забываю дописывать к mysql - mysqli. Что скажите по ошибкам?
function login() {
if (!empty($_POST)) {
$login = mysqli_real_escape_string(htmlspecialchars($_POST['login'])); //немного профильтруем логин
$password = md5($_POST['password']); //хешируем пароль т.к. в базе именно хеш
$user = $this->db->query("SELECT * FROM rust_users WHERE login = ? AND password = ?",$login,$password)->assoc();
Е-мае, pdo начал пользоваться недавно, поэтому забываю дописывать mysqli. Ваше замечание понял и исправил все на mysqli, но ошибка не исчезла, вернее видоизменилась. У меня строки выглядят читабельно, не знаю почему здесь отображаются так ужасно. (Использую phpDesigner8).
Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in Y:\home\oop.ru\www\app\ctrlIndex.php on line 17
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, null given in Y:\home\oop.ru\www\app\ctrlIndex.php on line 21
Точно! Проглядел. Не подскажите как сделать перезагрузку страницы после удачной авторизации. Я пробовал через document.location.reload(); , но не получилось.
@maxru поправил. Вот что получил: Socket error 10061 Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.
Warning: fwrite() expects parameter 1 to be resource, boolean given in Z:\home\mine.ru\www\engine\modules\shop.php on line 66 Warning: fwrite() expects parameter 1 to be resource, boolean given in Z:\home\mine.ru\www\engine\modules\shop.php on line 66 Warning: fwrite() expects parameter 1 to be resource, boolean given in Z:\home\mine.ru\www\engine\modules\shop.php on line 66
function login() {
if (!empty($_POST)) {
$login = mysqli_real_escape_string(htmlspecialchars($_POST['login'])); //немного профильтруем логин
$password = md5($_POST['password']); //хешируем пароль т.к. в базе именно хеш
$user = $this->db->query("SELECT * FROM rust_users WHERE login = ? AND password = ?",$login,$password)->assoc();
if (mysqli_num_rows($user) == 1) {
$row = mysqli_fetch_assoc($user);
$_SESSION['id'] = $row['id'];
$_SESSION['login'] = $row['login'];
setcookie("CookieMy", $row['id'], time()+60*60*24*10);
//header("Location: /");
} else
$this->error = 'Неправильный емейл или пароль';
}
$this->out('login.php');
}