Есть класс Database
<?php
class Database {
// укажите свои учетные данные базы данных
private $host = "localhost";
private $db_name = "patedfrb_faucet";
private $username = "patedfrb_faucet";
private $password = "vvv27361920dfvvv";
public $conn;
// получаем соединение с БД
public function getConnection(){
$this->conn = null;
try {
$this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);
$this->conn->exec("set names utf8");
} catch(PDOException $exception){
echo "Connection error: " . $exception->getMessage();
die();
}
return $this->conn;
}
}
?>
И обработка регистрации
<?php
require "database.php";
$database = new Database();
$db = $database->getConnection();
//Получаем данные из полей
$login = $_POST['login'];
$email = $_POST['email'];
$password = $_POST['password'];
//Проверяем зарегистрирован ли аккаунт или нет если да то выводим ошибку
$check_login = $conn->query("SELECT * FROM `usersss` WHERE `login` = '$login'")->fetch(PDO::FETCH_ASSOC);
if(!empty($check_login) > 0) {
echo "Данный аккаунт уже зарегестрирован!";
exit();
}
//Проверяем зарегистрирован ли email или нет если да то выводим ошибку
$check_email = $conn->query("SELECT * FROM `usersss` WHERE `email` = '$email'")->fetch(PDO::FETCH_ASSOC);
if(!empty($check_email) > 0) {
echo "Данный Email уже зарегестрирован!";
exit();
}
//Шифруем пароль с помощью md5
$password = md5($password."1afa148eb41f2e7103f21410bf48346c");
//Записываем данные в бд
$query = "INSERT INTO `usersss` (`login`, `password`, `email`) VALUES (:login, :password, :email)" or die("Ошибка записи");
$result = $conn->prepare($query);
$result->bindValue(':login', $login, PDO::PARAM_STR);
$result->bindValue(':password', $password);
$result->bindValue(':email', $email, PDO::PARAM_STR);
$result->execute();
//Редирект на главную страницу
header('Location: /index.php');
На строке 14 получаю ошибку Call to a member function query() on null
$check_login = $conn->query("SELECT * FROM `usersss` WHERE `login` = '$login'")->fetch(PDO::FETCH_ASSOC);