mam plik konfiguracyjny header.php
i stronę index.php, login.php, registry.php
REGISTRY.php
jest to wzorzec projektowy Rejestr - działa na zasadzie Singleton
abstract class Registry { self::$_tools[$name] = $value; } } }
HEADER.php
$db = new PDO('...'); Registry::set('db', $db);
USER.php
class User { ... function __construct($login, $haslo) { $m = Registry::get('db')->query("SELECT * FROM users WHERE `username`='$login', `password`='$haslo' LIMIT 1")->fetch();
W klasie User mogę używać obiektu db do łączenia się z bazą.
LOGIN.php
$user = new User($login, $password); Registry::set('user', $user);
W tym przypadku gdy dodaję obiekt do obiektu Register nie jest on dostępny w każdym miejscu np. w INDEX.php gdzie chciałbym wykonać pewną metodę z klasy User.
W jaki sposób uczynić $user dostępnym w każdym miejscu ? Gdybym w HEADER.php utworzył $user = new User($login, $password) i dodał do Registry to pewnie by zadziałało ale obiekt User ma powstać w chwili zalogowania ... jak rozwiązać taką sytuację ? Jak to się powinno poprawnie robić? Proszę o radę.