Перейти к контенту

Вопрос касательно классов


Рекомендуемые сообщения

class dbclass {
...
var $dbname;
  function db_query($query) {
          $result = mysql_db_query($this->dbname,$query);
          if (!$result)
               exit("Cant execute query: "+$query);
          return $result;
          }
...
}

и вот...

class news {
...
function show($news_per_page) {
                  $query = "SELECT * FROM news";
                  $result = mysql_fetch_array(dbclass::db_query($query));
                  $this->title = $result['title'];
                  }
...
}

Так вот, после выполнения

$экземпляр_класса_news->show(5);

Он выдает

Notice: Undefined ibresource: dbname in c:\www\tinews\db_class.php on line 24

Хотя до этого $dbname присвоена...

Вот мя смущает код

dbclass::db_query($query);

Используется несозданный обьект, поэтому у него нет свойств...

Как бы это обойти?

чтобы $dbname определялась...

Изменено пользователем Anarki
Ссылка на комментарий
Поделиться на других сайтах

$db = new dbclass;

 

global $db в function show

 

и

 

$db->db_query($query); вместо смущающего кода, нэ?

 

В твоем случае ты делаешь вызов статической функции из класса (dbclass::db_query), ей не передается $this при этом.

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.