Paginação pdo simples
Como faço uma paginação em PDO, com informações do banco de dados?
<?php
$conn = mysql_connect("localhost","root","");
$banco = mysql_select_db("blog_usuario");
$busca = "SELECT * FROM comentarios_topic WHERE id_topico = $id ORDER BY id "; //WHERE id = 1 procura pela id WHERE id_topico ='\$id'
$total_reg = "10"; // número de registros por página
$pagina= isset( $_GET['pagina'] ) ? (int)$_GET['pagina'] : 1;
if (empty($pagina)) {
$pc = "1";
} else {
$pc = $pagina;
}
$inicio = $pc - 1;
$inicio = $inicio * $total_reg;
$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
$todos = mysql_query("$busca");
$tr = mysql_num_rows($todos); // verifica o número total de registros
$tp = ceil($tr/$total_reg); // verifica o número total de páginas
$tr2 = $tr + 1;
$tp2 = ceil($tr2/$total_reg);// vamos criar a visualização
while ($dados = mysql_fetch_array($limite)) {
$nome = $dados["comentario"];
$ranke= $dados["id"];
$nick_autor_coment = $dados["autor"];
$inicio++;
echo "
$nick_autor_coment $nome";
}// botões "Anterior e próximo"
$anterior = $pc -1;
$proximo = $pc +1;
if ($pc>1) {
echo " <a href='forum/$link_pg/$anterior/'><-</a> ";
}
echo "|";
if ($pc<$tp) {
echo " <a href='forum/$link_pg/$proximo/'>-></a>";
}
echo "<br />";
if($tr<=$total_reg){
echo "<td></td>";
}
else{
for($i=1;$i<=$tp;$i++){
if($pagina==$i){
echo "<td style='background: red'><a href='forum/$link_pg/".$i."/'> ".$i."</a></td>";
}else{
echo "<td><a href='forum/$link_pg/".$i."/'> ".$i."</a></td>";
}
}
}
?>
Essa é uma paginação comum, mas como fazer em pdo?
Procurei na net mas eram códigos muito longos e desnecessários e cheios de erros, alguém pode me dizer como fazer isso em PDO, ou me mandar algum link ?
Discussão (17)
Carregando comentários...