Я пытаюсь создать запрос mysql, используя ООП в PHP. В приведенном ниже коде класс «database_disconnection» не выдает никаких ошибок или уведомлений, однако последний класс «database_query» дает мне уведомление о том, что $database_handle не определен. Я понятия не имею, что вызывает это, поскольку я создал класс database_query как производный класс от database_connection, который включает переменную $database_handle как частную. Любая помощь будет принята с благодарностью!
Создание объектов:
include("includes/database_classes.php");
new database_connection;
new database_query('SELECT * FROM users');
и классы:
<?php
/*----------------------------------------------------------------------------------------------------*/
class database_connection
{
private $username = 'root';
private $password = '';
private $hostname = 'localhost';
private $database = 'assistant';
private $database_handle;
function connect()
{
try
{
$database_handle = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
}
catch (PDOException $e)
{
print "Error!: " . $e ->getMessage() . "<br/>";
die();
}
}
}
/*----------------------------------------------------------------------------------------------------*/
class database_disconnection extends database_connection
{
function disconnect()
{
$database_handle = null;
}
}
/*----------------------------------------------------------------------------------------------------*/
class database_query extends database_connection
{
private $mysql_statement;
function __construct( $mysql_statement )
{
$this->mysql_statement = $mysql_statement;
foreach($database_handle->query("$mysql_statement") as $row) {
print_r($row);
}
}
}
/*----------------------------------------------------------------------------------------------------*/
?>