После исправления этой ошибки: viewtopic.php?f=13&t=55495 Возникла другая. Когда я логинюсь все работает $_SESSION['user'] заполняется. Array (user] => Array ( [id] => 9 [login] => qwerty [password] => 12TTMbeULQcAU => [url="mailto:qwerty@qwerty.ua"]qwerty@qwerty.ua[/url] [gender] => f [date_of_birthday] => 2020-11-20 [date_of_registretion] => 0000-00-00 00:00:00 [hash] => 12TTMbeULQcAU [activate] => 1 [access] => 0 ) ) Но при переходе на любую страницу показывает такие ошибки: [color=#FF0000]Warning: mysqli_query() expects parameter 1 to be mysqli, null given in Z:\home\test1.ru\www\libs\default.php on line 89 Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, null given in Z:\home\test1.ru\www\modules\allpage.php on line 10 Warning: Cannot modify header information - headers already sent by (output started at Z:\home\test1.ru\www\libs\default.php:89) in Z:\home\test1.ru\www\modules\allpage.php on line 12[/color] И $_SESSION['user'] стирается. Array ( [user] => ) После обновления страницы, меня разлогинивает. allpage.php [code=php]if (isset($_SESSION['user'])){ $res = q(" SELECT * FROM `users` WHERE `id` = ".$_SESSION['user']['id']." LIMIT 1 "); $_SESSION['user'] = mysqli_fetch_assoc($res); if ($_SESSION['user']['activate'] != 1 ) { header("Location: index.php?modules=main"); exit(); } } [/code] default.php [code=php]function q($query){ global $link; $res = mysqli_query($link,$query); //89 строка if($res === false ){ $info = debug_backtrace(); $error = date("d.m.Y H:i:s")." ERROR QUERY: ".$query."</br>\n".mysqli_error($link)." in a file ".$info['0']['file']." on line ".$info['0']['line']; file_put_contents('./logs/mysql.log',strip_tags($error)."\n\n",FILE_APPEND); echo $error; exit(); } else { return $res; } } [/code] [color=#FF0000]PHP, JavaScript, SQL и другой код пишите внутри тегов [b][code=[/b][b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
index.php Код (PHP): include_once './config.php'; include_once './libs/default.php'; include_once './variables.php'; include_once './modules/allpage.php'; $link = mysqli_connect(Core::$DB_HOST, Core::$DB_LOGIN, Core::$DB_PASSWORD, Core::$DB_NAME); mysqli_set_charset($link, 'utf8'); include './modules/'.$_GET['modules'].'/'.$_GET['page'].'.php'; include './skins/'.Core::$SKIN.'/index.tpl'; PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
какая каша... ну и в ней смотри в ошибке дефолтпхп линия 89 а тут у тебя подключения дефолта строка вторая а подключение к субд - строка ниже второй. на этом ты сам себе в ногу и стреляешь.
ну так не надо тупо менять местами строки. нужно уже сесть подумать и сделать логичный код. не? почему например не вынести работу с субд в отдельный файл? если ты его заинклюдил то там подключение создается и объявляется эта вот функцию ку. а если сделать класс то можно сделать вообще автозагрузку и забыть про то что можно забыть что-то заинклюдить.