Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2015, 03:43   #1
madmaniac
Форумчанин
 
Регистрация: 09.12.2010
Сообщений: 115
По умолчанию Не вызывается Класс из Класса :)

Доброго времени суток. Напоролся на вот такую проблему. В одной папке лежит 2 класса DB (Singletone) и Users.


Все работает когда в файле index.php пишу:
Код:
class Beta{
    public function __construct(){
        $db = DB::getInstance();
        print_r($db);
    }
}

$b = new Beta();
Немогу понять почему
При создании обьекта Users вылетает error:
Код:
Fatal error: Call to undefined method DB::getInstance() in ...

Класс DB:
Код:
<?php
class DB {

        private $db = null;

        private $db_conn;

        private static $db_type;

        private static $db_host;
        private static $db_name;
        private static $db_user;
        private static $db_pass;

        private static $db_path;

        private static $instance = null;

        private function __clone(){}
        private function __wake(){}

        private function __construct(){
            self::get_DATA();
         

            try{
                $this->db = new PDO($this->db_conn, self::$db_user, self::$db_pass);
                $this->db->query('set names utf8');
            } catch(PDOException $e){
                die();
                return "Database error: ".$e->errorCode();
            }

        }

        public function __destruct(){
            $this->db = null;
        }


        static public function getInstance(){
                if(self::$instance == null){
                    self::$instance = new DB();
                 }
                return self::$instance;
            }

    public function select($sql,$params = null){
        $q = $this->db->prepare($sql);
        $q->execute($params);
        return $q;
    }

}
Users упрощенный :
Код:
<?php

require_once "DB.php";

class Users {

    public function __construct($username = null, $password = null){
        $db = DB::getInstance();
        print_r($db);
    }
}
Господа - учитесь юзать поисковые машины
web-обитель | авто
madmaniac вне форума Ответить с цитированием
Старый 08.01.2015, 17:16   #2
madmaniac
Форумчанин
 
Регистрация: 09.12.2010
Сообщений: 115
По умолчанию

Проблему решить удалось, но непонятно как
Просто все переписал с 0 и заработало.. Причина ошибки не известна )
Господа - учитесь юзать поисковые машины
web-обитель | авто
madmaniac вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Класс на основе класса KsuKsuKsunia Visual C++ 1 09.11.2014 22:38
Класс внутри класса xxxkrikxxx Общие вопросы Delphi 7 28.07.2014 18:31
ооп класс внутри класса Abuhamed PHP 2 02.04.2012 22:07
Класс внутри класса Prontit Общие вопросы Delphi 16 07.10.2011 08:30
передача типов из класса в класс badmfck Общие вопросы Delphi 10 24.05.2010 12:31