Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS

Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17246
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação estilo Google

29-07-2007 08:20

Essa é uma busca parecida com a busca Google, onde é exibido uma quantidade de links em cada página da busca.

Observe os itens comentados ( // ) que devem ser editados no script abaixo

<?php function getmicrotime(){ list($sec, $usec) = explode(" ",microtime()); return ($sec + $usec); } $time_start = getmicrotime(); // nome deste documento ( ex.: busca.php ) usado no link da paginação /* Obs: caso tenha que passar parâmetros pelo link ( busca.php?valor=... ) basta adicionar ao documento abaixo ( busca.php?valor=...&outrovalor=... vá também em duas linhas abaixo definidas como COMPLEMENTO e defina-os Ex.: WHERE campotal='' AND campo='', etc... */ $arquivo = "busca.php"; $endereco = "localhost"; // servidor $banco = "bd"; // nome do db $usuario = "usuario"; // usuário $password = "senha"; // senha $table = "tabela"; // tabela usada $maxpag = 3; // máximo de seu resultado por página // máximo de links mostrado por página // valor dobrado a partir do valor $maxpag $maxlnk = 6; if ($_GET['id'] == ''){$param = 0;} else { $temp = $_GET['id']; $passo1 = $temp - 1; $passo2 = $passo1*$maxpag; $param = $passo2;} $res = mysql_connect("$endereco", "$usuario", "$password"); //### $sql = "select * from $table"; // COMPLEMENTO $sql_01 = "select * from $table limit $param,$maxpag"; // COMPLEMENTO //### $res1 = mysql_db_query("$banco", "$sql", $res); $res2 = mysql_db_query("$banco", "$sql_01", $res); $totreg = mysql_num_rows($res1); $totreg_01 = mysql_num_rows($res2); $results_tot = $totreg; $results_parc = $totreg_01; $result_div = $results_tot/$maxpag; $n_inteiro = (int)$result_div; if ($n_inteiro < $result_div) {$n_paginas = $n_inteiro + 1;} else {$n_paginas = $result_div;} $pg_atual = $param/$maxpag+1; $reg_inicial = $param + 1; $pg_anterior = $pg_atual - 1; $pg_proxima = $pg_atual + 1; $time_end = getmicrotime(); $time = $time_end - $time_start; ?> <table width="100%"> <tr> <td align=right>Foram encontradas <b><?php echo $totreg; ?></b> ocorrência(s) em <b><?php echo $n_paginas; ?></b> página(s) de resultado(s) - visualizando <b><?php echo $maxpag; ?></b> resultado(s) por página.</font></td> </tr> </table> <br> <table width="100%"> <tr><td> <?php while($resultado = mysql_fetch_array($res2)) { $contador ++; extract($resultado); ?> <?php echo "$campo<br>"; ?> <?php } $reg_final = $param + $contador; ?> </td></tr> </table> <br> <center> <table> <tr> <td align=right> <?php if ($_GET['id'] > 1) { ?> <a href="<?php echo $arquivo; ?>?id=<?php echo $pg_anterior; ?>">anterior(es)<?}?></a></td> <?php if ($temp >= $maxlnk){ if ($n_paginas > $maxlnk) {$n_maxlnk = $temp + 4; $maxlnk = $n_maxlnk; $n_start = $temp - 6; $lnk_impressos = $n_start;}} while(($lnk_impressos < $n_paginas) and ($lnk_impressos < $maxlnk)) { $lnk_impressos ++; ?> <td> <?php if($pg_atual != $lnk_impressos) { echo "<a href=\"$arquivo?id=$lnk_impressos\">";} if ($pg_atual == $lnk_impressos){echo "<b>$lnk_impressos<b>"; } else { echo "$lnk_impressos";} ?></a></font></td> <?php } ?> <td> <?php if ($reg_final < $results_tot) { ?> <a href="<?php echo $arquivo; ?>?id=<?php echo $pg_proxima; ?>">próximo(s)</a></td> <?php } //} ?> </tr> </table> </center> <br> <table width="100%"> <tr> <td align=center>mostrando de <b><?php echo $reg_inicial; ?></b> - <b><?php echo $reg_final; ?></b> resultado(s) por página. - total de <b><?php echo $totreg; ?></b> no banco de dados. <br> <?php $texto=printf ("a pesquisa demorou <b>%.3f</b> segundos",$time);?></td> </tr> </table>

0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado