Добрый день! Я пишу классы для работы с mysqli чтобы каждый раз ее не вызывать. Функция connect которая соединяется с базой данных получилась, а вот как оформить функцию select которая выбирает и возвращает id нужного имени пользователя и пароля через класс Database? То же самое планирую сделать с функцией create. Я дважды получается обращаюсь к классу Database.php Что не так в синтаксисе? Браузер выдает ошибку
Warning: mysqli_query() expects parameter 1 to be mysqli, null given in E:\openserver\OSPanel\domains\notebook.ru\classes\Database.php on line 8
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in E:\openserver\OSPanel\domains\notebook.ru\classes\Database.php on line 9
Введенные данные не верны
Класс Database:
<?php
class Database {
public function connect() {
return mysqli_connect("localhost", "root", "", "notebook");
}
public function select() {
$user = mysqli_query($sql, "SELECT `id` FROM `users` WHERE `username` = '$username' AND `password` = '$password'");
return mysqli_fetch_array($user);
}
}
Класс User:
<?php
require_once("Database.php");
class User {
function find($username, $password) {
$database = new Database();
$sql = $database->connect();
$database->select();
}
function create($username, $password, $email) {
$database = new Database();
$sql = $database->connect();
mysqli_query($sql, "INSERT INTO users(username, password, email) VALUES ('$username', '$password', '$email')");
}
}