Skip to content

Instantly share code, notes, and snippets.

@jonnybarnes
Created November 1, 2013 15:28
Show Gist options
  • Save jonnybarnes/7267124 to your computer and use it in GitHub Desktop.
Save jonnybarnes/7267124 to your computer and use it in GitHub Desktop.
<?php
//set page value
if(isset($_GET['page'])) {
$page = $_GET['page'];
} else {
$page = 1;
}
//create pdo
$dbh = new PDO(...);
//get num rows
$stmt = $dbh->query("SELECT * FROM pages");
$rows = $stmt->rowCount();
//calculate last page
$rows_per_page = 2;
$lastpage = ceil($rows/$rows_per_page);
//check $page within range, if not, set it to nearest value
if($page > $lastpage) {
$page = $lastpage;
}
if($page < 1 ) {
$page = 1;
}
//create LIMIT clause
$limit = ($page - 1) * $rows_per_page;
$sql = "SELECT page, content FROM pages ORDER BY pubtime DESC LIMIT $limit, $rows_per_page";
foreach($dbh->query($sql) as $row) {
echo stuff or whatevs
}
//sort out prev and next links
if($page < $lastpage) ? $prev = '<a href="/news/?page=' . $page - 1 . '">prev</a>' : '';
if($page > 1) ? $next = '<a href="/news/?page=' . $page + 1 . '">next</a>' : '';
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment