PEAR: DB - > число записей в таблице

zerkms

TDD infected
Команда форума
PEAR: DB - > число записей в таблице

привет народ

столкнулся вот с какой проблемой:

делаю постраничный вывод (метод ака phpBB), т.е. &start=10 и т.д.

и при выводе навигационной панели с номерами страниц мне естественно нужно общее число элементов на всех страницах.

а т.к. я делаю запрос в виде:

$sql = "SELECT * FROM users WHERE login!='Гость' ORDER BY id LIMIT " . $start . ", " . $board_config['items_per_page'];

то естественно мне нужно делать ещё один "холостой" запрос:

$sql_sum = "SELECT id FROM users";
$res_sum =& $db->query($sql_sum);
$users_summary = $res_sum->numRows() - 1;

есть ли вариант оптимальнее??
 

lucas

Guest
Вместо...
$sql_sum = "SELECT id FROM users";
$res_sum =& $db->query($sql_sum);
$users_summary = $res_sum->numRows() - 1;
...пишешь:
Код:
SELECT [b]COUNT(*)[/b] FROM users
Это возвратит количество строк в выборке.
 

zerkms

TDD infected
Команда форума
lucas

а как это будет выглядеть с учётом ПЕАР интерфейса??

-~{}~ 19.07.04 15:07:

сделал:

PHP:
$sql_sum = "SELECT COUNT(*) as users_sum FROM users";
$res_sum =& $db->query($sql_sum);
if ( $row =& $res_sum->fetchRow() ) {
	$users_summary = $row['users_sum'] - 1;
};
 
Сверху