Pager

Главные вкладки

Аватар пользователя AndreyL AndreyL 31 мая 2010 в 22:55

Нужна помощь в разбитии запроса на страницы.

<?php
 
print $body;
  if(!(
$node menu_get_object()))
    return;
 
  
$result db_query("SELECT Название, Фирма, Цена FROM Таблица where Имя='%s' ORDER BY Фирма"$node->title);
  
$rows = array();
  while(
$row db_fetch_object($result)){
  
$header = array('Название по прайсу''Мед. компания''Цена услуги');
    
$rows[] = array($row->Название$row->Фирма$row->Цена);
  }

  print 

theme('table'$header$rows, array());

?>

Как ни игрался с "pager_query" - либо отсутствие таблицы вообще, либо отсутствие пейджинга.

P.S. Дополнительные модули не помогли: один из них (pagination, вроде) ломал таблицу на второй и последующих страницах; другой вообще не видел таблицу запроса, а "дробил" только "руками" набранный текст.

Комментарии

Аватар пользователя olk olk 31 мая 2010 в 23:15
<?php
 print $body;
  if(!($node = menu_get_object()))
    return;
 
  $count_per_page = 10;
  $sql = "SELECT Название, Фирма, Цена FROM Таблица WHERE Имя='%s' ORDER BY Фирма";
  $sql_count = "SELECT COUNT(*) FROM Таблица WHERE Имя='%s'";
  $result = pager_query($sql,$count_per_page, 0, $sql_count, $node->title);
 
  $rows = array();
  while($row = db_fetch_object($result)){
  $header = array('Название по прайсу', 'Мед. компания', 'Цена услуги');
    $rows[] = array($row->Название, $row->Фирма, $row->Цена);
  }

  $output = theme('table', $header, $rows, array());
  $output .= theme('pager', NULL, $count_per_page, 0);
  print $output;
?>

Где то так примерно.

Аватар пользователя Mirocow Mirocow 31 мая 2010 в 23:19
<?php
 print $body;
  if(!($node = menu_get_object()))
    return;
 
  $result = pager_query("SELECT Название, Фирма, Цена FROM Таблица where Имя='%s' ORDER BY Фирма", $node->title, 10);
  $rows = array();
  while($row = db_fetch_object($result)){
  $header = array('Название по прайсу', 'Мед. компания', 'Цена услуги');
    $rows[] = array($row->Название, $row->Фирма, $row->Цена);
  }

  print theme('table', $header, $rows, array());

  print theme('pager', NULL, 10, 0)

?>

Как то так

Аватар пользователя AndreyL AndreyL 4 июня 2010 в 8:37

Пейджинг работает, как надо. Но вот текст на "дочерних" страницах почему-то не попадает в индекс сайта. На поисковиках все еще кэш хранится. А на сайте часть (большая) текста в индексе пропала...