O desenvolvimento da Web é a base do desenvolvimento de programas distribuídos no futuro. Geralmente, o desenvolvimento da Web envolve lidar com bancos de dados do servidor e geralmente os exibe na forma de paginação. Portanto, escrever programas de paginação é uma parte importante do desenvolvimento web. Aqui estudaremos juntos a escrita de programas de paginação.
1. Princípio do programa de paginação
O programa de paginação possui dois parâmetros muito importantes: quantos registros são exibidos em cada página ($pagesize) e qual página é a página atual ($page). Com esses dois parâmetros, podemos escrever facilmente um programa de paginação. Usamos o banco de dados MySql como fonte de dados. No mysql, se você deseja remover um conteúdo específico da tabela, você pode usar a instrução T-SQL: selecione. * do deslocamento do limite da tabela, linhas a serem alcançadas. O deslocamento aqui é o deslocamento do registro e seu método de cálculo é offset=$pagesize*($page-1), rows é o número de registros a serem exibidos, aqui está $page. Em outras palavras, a instrução select * from table limit 10,10 significa recuperar os 20 registros a partir do 11º registro da tabela.
2. Análise do código principal
$pagesize=10; //Definir o número de registros exibidos em cada página;
$conn=mysql_connect("localhost","root",""); //Conecta-se ao banco de dados
$rs=mysql_query("select count(*) from tb_product",$conn); //Obtém o número total de registros $rs);
$minhalinha = mysql_fetch_array($rs);
$numrows=$myrow[0];
//Calcular o número total de páginas
$pages=intval($numrows/$pagesize);
//Julgar a configuração do número da página
if (isset($_GET['page'])){
$página=intval($_GET['página']);
}
outro{
$page=1; //Caso contrário, defina para a primeira página
}
3. Criar tabela de casos de uso minhaTabela
criar tabela minhaTabela(id int NOT NULL auto_increment, news_title varchar(50), news_cont text, add_time datetime, PRIMARY KEY(id))
4. Código completo
<html>
<cabeça>
<title>exemplo de paginação php</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</cabeça>
<corpo>
<?php
$conn=mysql_connect("localhost","root","");
//Define o número de registros exibidos em cada página $pagesize=1;
mysql_select_db("meusdados",$conn);
//Obtém o número total de registros $rs e calcula o número total de páginas usando $rs=mysql_query("select count(*) from tb_product",$conn);
$minhalinha = mysql_fetch_array($rs);
$numrows=$myrow[0];
//Calcula o número total de páginas
$pages=intval($numrows/$pagesize);
if ($numrows%$tamanho da página)
$páginas++;
//Definir o número de páginas if (isset($_GET['page'])){
$página=intval($_GET['página']);
}
outro{
//Definir para a primeira página $page=1;
}
//Calcula o deslocamento do registro $offset=$pagesize*($page - 1);
//Lê o número especificado de registros $rs=mysql_query("select * from myTable order by id desc limit $offset,$pagesize",$conn);
if ($minhalinha = mysql_fetch_array($rs))
{
$i=0;
?>
<borda da tabela="0" largura="80%">
<tr>
<td largura="50%" bgcolor="#E0E0E0">
<p alinhar="centro">Título</td>
<td largura="50%" bgcolor="#E0E0E0">
<p align="center">Hora de publicação</td>
</tr>
<?php
fazer {
$eu++;
?>
<tr>
<td width="50%"><?=$myrow["news_title"]?></td>
<td largura="50%"><?=$minhalinha["news_cont"]?></td>
</tr>
<?php
}
while ($minhalinha = mysql_fetch_array($rs));
echo "</tabela>";
}
echo "<div align='center'> tem ".$pages." páginas (".$page."/".$pages.")";
for ($i=1;$i< $página;$i++)
echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
echo "[".$página."]";
for ($i=$página+1;$i<=$páginas;$i++)
echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
eco "</div>";
?>
</corpo>
</html>
5. Resumo
Este código de exemplo roda normalmente no servidor windows2000+php4.4.0+mysql5.0.16. O formato de paginação mostrado neste exemplo é [1][2][3]…. Se você deseja exibi-lo na forma de "Página inicial Página anterior Próxima página Última página", adicione o seguinte código:
$first=1;
$anterior=$página-1;
$próximo=$página+1;
$última=$páginas;
if ($página > 1)
{
echo "<a href='fenye.php?page=".$first."'>Página inicial</a> ";
echo "<a href='fenye.php?page=".$prev."'>Página anterior</a> ";
}
if ($página < $páginas)
{
echo "<a href='fenye.php?page=".$next."'>Próxima página</a>
echo "<a href='fenye.php?page=".$last."'>Última página</a> ";
}
Na verdade, escrever código de exibição de paginação é muito simples, desde que você domine seu princípio de funcionamento. Espero que este artigo possa trazer ajuda para os programadores web que precisam desse aspecto da programação.