function pager($query, $start = 0, $limit = 25) { if (!is_numeric($start)) { $start = 0; } if (!is_numeric($limit)) { $limit = 25; } //SQL_CALC_FOUND_ROWS if (strpos (strtoupper($query), 'SQL_CALC_FOUND_ROWS') === false) { $pattern = '/^SELECT (.*?) FROM/i'; $replacement = 'SELECT SQL_CALC_FOUND_ROWS $1 FROM '; $query = preg_replace($pattern, $replacement, $query); } $rows = $this->get_results_assoc($query." LIMIT $start,$limit"); $total = $this->get_var("SELECT FOUND_ROWS()"); $get = $_GET; $pages = ceil($total / $limit); if ($pages > 1) { $next = ''; $prev = ''; ob_start(); ?>Page:
[prev]'; } if (!$next) { $next = '[next]'; } echo $prev.' '.$next.'
'; $nav = ob_get_clean(); } return array('nav' => $nav, 'rows' => $rows); /* list($total) = $this->get_row("SELECT COUNT(*) FROM users"); $users = $this->get_results_assoc("SELECT * FROM users ORDER BY admin DESC, uname"); foreach ($users as $user) { echo $user['uname'].'
'; } */ }