Обучение/Помощь новичкам | Помогите разобрать ошибки
ЮХЛАЙ , нет куки id, нет куки password, вот notice и выдает
Перевод ошибок: "Неизвестный индекс", а дальше указывает то, что за индекс. $_COOKIE - это массив. Массив представляет из себя набор данных вида "ключ - значение". В данном случае индекс - это и есть ключ. Возвращаясь к твоим проблемам, можно сделать вывод, что в массиве $_COOKIE у тебя нет ни id, ни password, на что php тебе и указывает. Аналогичная ситуация и с 22 строкой, где $_GET. Для быстрого решения (на основе твоего кода) предлагаю тебе следующее решение: 1. Если у тебя версия php >= 7: 2. Если у тебя версия php ниже 7, то: --- Здесь я добавил проверки на существование этих индексов. Если они есть, то используем их, иначе - присваиваем 0 или пустоту. В таком случае твои условия на основе этих данных буду срабатывать, а php не будет "ругаться".
________
посл. ред. 11.07.2020 в 17:16; всего 3 раз(а); by Yadalay
php
$id = _string(_num($_COOKIE['id'] ?? 0)); $password = _string($_COOKIE['password'] ?? null); // 22 строчка $id = _string(_num($_GET['id'] ?? 0)); php
$id = _string(_num(! empty($_COOKIE['id']) ? $_COOKIE['id'] : 0)); $password = _string(! empty($_COOKIE['password']) ? $_COOKIE['password'] : null); // 22 строчка $id = _string(_num(! empty($_GET['id']) ? $_GET['id'] : 0)); ________
посл. ред. 11.07.2020 в 17:16; всего 3 раз(а); by Yadalay
Yadalay , регистрация прошла ошибки исчезли .
На почему то не видит это
if($user) {
header('location: /game.php');
exit;
}
На почему то не видит это
if($user) {
header('location: /game.php');
exit;
}
Потому что у тебя не выполняется условие if ($id && $password), так как данные в cookie ($_COOKIE) отсутствуют. А объявление $user у тебя как раз внутри условия. Ну, или тебе надо использовать не $user, а $ank. Подсказать тут не могу, так как другого кода не вижу.
php
<? session_start(); error_reporting(1); if(mysql_connect('localhost','db1594466174','323232')) { if(mysql_select_db('db1594466174')) { mysql_query('SET NAMES UTF8'); } else { } } else { } ini_set('error_reporting', E_ALL); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); ?> ЮХЛАЙ (11.07.2020 в 18:20)
Yadalay , регистрация прошла ошибки исчезли .
На почему то не видит это
if($user) {
header('location: /game.php');
exit;
}
Yadalay , регистрация прошла ошибки исчезли .
На почему то не видит это
if($user) {
header('location: /game.php');
exit;
}
ты кукам время жизни не указал
if(!$user) {
setCookie('id', '');
setCookie('password', '');
}
php
<? function _string($string) { $string = trim($string); $string = mysql_real_escape_string($string); $string = htmlspecialchars($string); return $string; } function _num($i) { $i = (int) abs($i); return $i; } ?> php
<? require ('./sys/connent.php'); require ('./sys/fnc.php'); require ('./sys/users.php'); require ('./sys/h.php'); if($user) { header('location: /undex.php'); exit; } $pas = rand(1,999999); $log = rand(1,99999); $password = md5($pas); if(mysql_query('INSERT INTO `users` (`login`,`password`, `reg_time`, `exp`, `coin`) VALUEs ("player'.$log.'", "'.$password.'", "'.time().'", "0", "100")')) { $id = mysql_insert_id(); $user = mysql_query('SELECT * FROM `users` WHERE `id` = "'.$id.'"'); $user = mysql_fetch_array($user); setCookie('id', $user['id'], time() + 86400 * 365); setCookie('password', $password, time() + 86400 * 365); header('location: /index.php'); } ?> Four (11.07.2020 в 18:48) ты кукам время жизни не указал if(!$user) { setCookie('id', '');setCookie('password', ''); }
Индефикатор установи! для времени Куки
________
посл. ред. 11.07.2020 в 19:22; всего 1 раз(а); by wearnings
________
посл. ред. 11.07.2020 в 19:22; всего 1 раз(а); by wearnings
wearnings , а как?)