Добрый день!
Подскажите, почему появляется
Fatal error: Uncaught Error: Call to a member function close() on boolean in /srv/disk11/2104939/www/bradsite.tk/register.php:337 Stack trace: #0 {main} thrown in /srv/disk11/2104939/www/bradsite.tk/register.php on line 337?
Строка
$result_query_insert->close(); с ошибкой в коде ниже:
<?php
//Запрос на добавления пользователя в БД
$result_query_insert = $mysqli->query("INSERT INTO `users` (first_name, last_name, email, password, date_registration) VALUES ('".$first_name."', '".$last_name."', '".$email."', '".$password."', NOW())");
if(!$result_query_insert){
// Сохраняем в сессию сообщение об ошибке.
$_SESSION["error_messages"] .= "<p class='mesage_error' >Ошибка запроса на добавления пользователя в БД</p>";
//Возвращаем пользователя на страницу регистрации
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$address_site."form_register.php");
//Останавливаем скрипт
exit();
}else{
//Составляем зашифрованный и уникальный token
$token=md5($email.time());
//Добавляем данные в таблицу confirm_users
$query_insert_confirm = $mysqli->query("INSERT INTO `confirm_users` (email, token, date_registration) VALUES ('".$email."', '".$token."', NOW()) ");
if(!$query_insert_confirm){
// Сохраняем в сессию сообщение об ошибке.
$_SESSION["error_messages"] .= "<p class='message_error' >Ошибка запроса на добавление пользователя в БД (confirm)</p>";
//Возвращаем пользователя на страницу регистрации
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$address_site."form_register.php");
//Останавливаем скрипт
exit();
}else{
//Составляем заголовок письма
$subject = "Подтверждение почты на сайте ".$_SERVER['HTTP_HOST'];
//Устанавливаем кодировку заголовка письма и кодируем его
$subject = "=?utf-8?B?".base64_encode($subject)."?=";
//Составляем тело сообщения
$message = 'To get started <a href="http://www.bradsite.tk/activation.php?email='.$email.'&token='.$token.'">Verify your account</a><br><br>';
//Составляем дополнительные заголовки для почтового сервиса mail.ru
//Переменная $email_admin, объявлена в файле dbconnect.php
$headers = "FROM: $email_admin\r\nReply-to: $email_admin\r\nContent-type: text/html; charset=utf-8\r\n";
//Отправляем сообщение с ссылкой для подтверждения регистрации на указанную почту и проверяем отправлена ли она успешно или нет.
if(mail($email, $subject, $message, $headers)){
$_SESSION["success_messages"] = "<h4 class='success_message'><strong>Регистрация прошла успешно!!!</strong></h4><p class='success_message'> Теперь необходимо подтвердить введенный адрес электронной почты. Для этого, перейдите по ссылке указанную в сообщение, которую получили на почту ".$email." </p>";
//Отправляем пользователя на страницу регистрации и убираем форму регистрации
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$address_site."form_register.php?hidden_form=1");
exit();
}else{
$_SESSION["error_messages"] .= "<p class='message_error' >Ошибка при отправлении письма с сcылкой подтверждения, на почту ".$email." </p>";
}
// Завершение запроса добавления пользователя в таблицу users
$result_query_insert->close(); // <<<<<<<<<<<Строка 337 с ошибкой
// Завершение запроса добавления пользователя в таблицу confirm_users
$query_insert_confirm->close();
}
}
//Закрываем подключение к БД
$mysqli->close();
//Отправляем пользователя на страницу регистрации
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$address_site."form_register.php");
exit();
?>