Proszę o opinie czy to co robie ma sens.
//-------------------------------------------------------------------------------------------------------------------------------------------------- class DBconnect{ public $pdo; private $db_host; private $db_name; private $db_user; private $db_pass; public function __construct($db_host, $db_name, $db_user, $db_pass) { try{ $this->db_host = $db_host; $this->db_name = $db_name; $this->db_user = $db_user; $this->db_pass = $db_pass; $this->pdo = new PDO('mysql:host='.$db_host.';dbname='.$db_name, $db_user, $db_pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); }catch(PDOException $e){ } } private function __clone(){} { if (self::$instance === null) { self::$instance = new DBconnect(DB_HOST, DB_NAME, DB_USER, DB_PASS); } return self::$instance; } } //------------------------------------------------------------------------------------------------------------------------------------- class User { public $id = ""; public $login = ""; public $passwd = ""; public $level = ""; public $user_id = 0; public $email = ""; public $mobile = ""; public $data_add = ""; public $username = ""; public function __construct(){} public function addUser(){} public function deleteUser(){} public function updateUser(){} } //------------------------------------------------------------------------------------------------------------------------------------- class Authentication { private $db; public $user; public function __construct(){ $this->db = DBconnect::getInstance(); $this->user = new User; } public function get_param() { $this->user->login = $_POST["login"]; $this->user->passwd = $_POST["passwd"]; $_SESSION["login"] = $this->user->login; $_SESSION["passwd"] = $this->user->passwd; return true; $this->user->login = $_SESSION["login"]; $this->user->passwd = $_SESSION["passwd"]; return true; }else{ return false; } } public function login() { if( $this->get_param() ) { $sql = "select * FROM users WHERE active = 1 and login = :login and passwd = md5(:passwd)"; $query->bindParam(':login', $this->user->login, PDO::PARAM_STR); $query->bindParam(':passwd', $this->user->passwd, PDO::PARAM_STR); $query->execute(); $row = $query->fetch(); if( $query->rowCount() > 0 ) { $this->user->login = "true"; $this->user->level = $row["is_admin"]; $this->user->user_id = $row["id"]; $this->user->username = $row["firstname"]." ".$row["lastname"]; }else{ $this->user->login = ""; $this->user->passwd = ""; $this->user->level = ""; $this->user->user_id = 0; $this->user->username = ""; } } } }