Использование метода из другой функции для создания уникального dbQuery для выполнения оператора prepare - PullRequest
0 голосов
/ 27 августа 2011

У меня возникли проблемы с использованием метода из другой функции.Они оба в одном классе, но я получаю сообщение об ошибке «Неустранимая ошибка: вызов функции-члена prepare () для необъекта в / / blabla.php в строке 42»

Коднаписано сейчас выглядит так:

public function connectDatabase() 
         {
         try {
             $DBC = new PDO("mysql:host=".self::dbhost.";dbname=".self::dbname."", self::dbuser, self::dbpass);
             $DBC->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );            
             }
             catch(Exception $e) 
             {
                 echo $e->getMessage();
             }
         }

public function InsertNewForumData( $data )
    {
         $new = $DBC->prepare( $data );
     $new->execute();
    }

1 Ответ

0 голосов
/ 27 августа 2011

Причина, по которой вы получаете эту ошибку, заключается в том, что $ DBC не определен в вашем InsertNewForumData методе. Вы можете либо передать его по ссылке, выполнив self::InsertNewForumData( $data, $DBC );, а также добавить его в список параметров объявления этого метода, либо сохранить его в self::DBC следующим образом:

public function connectDatabase() 
         {
         try {
             self::DBC = new PDO("mysql:host=".self::dbhost.";dbname=".self::dbname."", self::dbuser, self::dbpass);
             self::DBC->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );            
             }
             catch(Exception $e) 
             {
                 echo $e->getMessage();
             }
         }

public function InsertNewForumData( $data )
    {
         $new = self::DBC->prepare( $data );
         $new->execute();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...