Есть файл класса:
<?php
class banners_mod {
	
var $banner_code;
	
function get_banner() {
  $query = mysql_query("SELECT * FROM banners AS banners WHERE banners.maxshowbanner > banners.showbanner ORDER BY banners.showbanner LIMIT 1");
  $table_banners = mysql_fetch_assoc($query);
  $id = $table_banners[\'id\'];
  if (mysql_query("UPDATE banners SET showbanner = \'".($table_banners[\'showbanner\']+1)."\' WHERE id = ".$id)) {
  	
echo $table_banners[\'id\'];
  } else {
  	
echo mysql_error();
  	
exit;
  }
  $this->banner_code = $table_banners[\'code\'];
  return true;
	
}
}
$banners_mod = new banners_mod;
$banners_mod->get_banner();
echo $banners_mod->banner_code;
?>Таблица выглядит так:
# Таблица баннеров
DROP TABLE IF EXISTS banners;
CREATE TABLE banners (
   id INT NOT NULL AUTO_INCREMENT,  # Идетентификатор банера
   code VARCHAR(255) NOT NULL,     # Код баннера
   description VARCHAR(255) NOT NULL,  # Описание раздела
   showbanner INT NOT NULL,     # Текущее Кол-во показов баннера
   maxshowbanner INT NOT NULL,     # Максимальное Кол-во показов баннера
   PRIMARY KEY(id)
);
INSERT INTO banners (code,description,showbanner,maxshowbanner) values(\'

\',\'Описание\',\'0\',\'100 \');
INSERT INTO banners (code,description,showbanner,maxshowbanner) values(\'

\',\'Описание\',\'0\',\'50\');
INSERT INTO banners (code,description,showbanner,maxshowbanner) values(\'

\',\'Описание\',\'0\',\'150\');
Так вот. Суть этой системы, выводить каждый раз по 1 баннеру, который показан меньше всего раз, но не превышает максимальное кол-во показов этого баннера.
Фигня в чём. Если не выводить баннер (последняя строчка кода), то таблица обновляется правильно, но если баннер выводится, то обновляются почему-то все поля. Каким боком вывод переменной может влиять на результат работы функции ума не приложу 

ЗЫ: сломал голову, но не нашел баг.