0

Paginando resultados com a Classe Generic Easy Pagination

criado por Olavo Alexandrino em 13/07/2004 4:13pm
Vamos ao arquivo de exemplo: test.php

Nas duas primeiras linhas do arquivo “test.php” temos:

<?php
require_once('YOUR_PATH/adodb.inc.php');
require_once('YOUR_PATH/class.GenericEasyPagination.php');
?>

YOUR_PATH da linha 1 é o caminho que você instalou a classe ADODB;
YOUR_PATH da linha 2 é o caminho que você instalou a classe Easy Generic Pagination;

<?php
///////////////////////////////////////////////////////////////////
// Define Constants
if (!empty($_GET["page"])) {
    $page = $_GET["page"];	
} else {
    $page = 1;		
}

define('RECORDS_BY_PAGE', 5);
define('CURRENT_PAGE', $page);

///////////////////////////////////////////////////////////////////
// Connection Of DataBase
$objConnection = &ADONewConnection('mysql'); 
$objConnection->Connect('localhost','root','','test');


///////////////////////////////////////////////////////////////////
// Select Records By "PageExecute Method"
$strSQL = "SELECT id_user, user_name FROM users ORDER BY user_name";
$objConnection->SetFetchMode(ADODB_FETCH_ASSOC);
$rs = $objConnection->PageExecute($strSQL, RECORDS_BY_PAGE, CURRENT_PAGE);

/*
O método “SetFetchMode” retorna os resultados na forma de array associativo. É necessário
utilizar essa opção para garantir o funcionamento dos vários SGBDs que a classe ADODB
suporta. Foi necessário para funcionamento em MS SQL, pois o array em com índices
inteiros não continha os resultados correspondentes ao MySQL.
*/

///////////////////////////////////////////////////////////////////
// Display Records

// O Objeto RecordSet está no EOF ?
if (!$rs->EOF) {
    // Número máximo de registros retornados pela query
    $recordsFound = $rs->_maxRecordCount;
    echo "RecordsLits:<br><br>";
    while(!$rs->EOF) {
        echo "User Name: ".$rs->fields["user_name"]." (id: ".$rs->fields["id_user"].")<br>";
        $rs->moveNext();
    }

///////////////////////////////////////////////////////////////////
// Pagination
    $GenericEasyPagination =& new GenericEasyPagination(CURRENT_PAGE, RECORDS_BY_PAGE, "eng");
    $GenericEasyPagination->setGetVars(“language=php”);
    $GenericEasyPagination->setTotalRecords($recordsFound);
    echo "<br>";
    echo "Records found: ".$recordsFound;
    echo "<br>Records ";
    echo $GenericEasyPagination->getListCurrentRecords();
    echo "<br>";
    echo $GenericEasyPagination->getNavigation();
    echo "<br>";
    echo $GenericEasyPagination->getCurrentPages();
    echo "<br>";
}
?>

Comentários:

Mostrando 1 - 10 de 10 comentários
Muito legal seu artigo. Infelizmente muitos programadores constroem seus sistemas sem pensar a frente, são uns idiotas metidos a programadores...
02/09/2004 12:10pm (~19 anos atrás)

Dúvidas entre usar ADOdb e PEAR BD?

deem uma olhada:
http://phplens.com/lens/adodb/
27/07/2004 9:59am (~20 anos atrás)

Se cadastrou no PHP Classes?

o que tá havendo lá?

qualquer coisa te envio...
20/07/2004 6:46am (~20 anos atrás)

Caros colegas,

Gostaria de experimentar essa Classe, mas estou tendo dificuldades em me cadastrar pra depois receber uma senha pra depois acessar novamente pra depois conseguir ou não a tal classe.

Se um de vocês puder enviar para meu e-mail:
julian.dagolofi@bol.com.br a tal classe, eu agradeceria.

Gostaria de tentar utilizá-la e se fizer melhorias eu as publicarei aqui.


Um abraço a todos do phpbrasil
19/07/2004 3:59pm (~20 anos atrás)

cara na boa..
eu vou procurar..

mas perdi muitos arquivos..
de qualquer forma eu vou precisar de uma classe assim.. :)

vou acabar refazendo isso e se fizer te passo ..
16/07/2004 6:05am (~20 anos atrás)

Me envia...

pois ela esta no PHP Classes

e qualquer coisa eu altero a versão online

falows
14/07/2004 11:13am (~20 anos atrás)

ehehehe
cara nem eu lembro :(

mas eu criei um método ou dois a mais na classe

mas basicamente eles faziam alterações no número de páginas .. vou ver se eu tenho em casa e posto aqui
14/07/2004 9:52am (~20 anos atrás)

e aí Marcelo?!!

quais as alterações?
to lembrado nao...

;)
14/07/2004 7:07am (~20 anos atrás)

recomendo essa :)

usei uma vez que estava super em cima
na entrega de projeto..

fiz algumas alterações..

não sei se você lembra cara...
mas é muito boa a classe

facilita bastante
13/07/2004 6:46pm (~20 anos atrás)

leo genilhu disse:
God, very god ...

Bom estou usando esta classe ja algum tempo
e estou bem satisfeito com a perfomace e com a facilidade de adptacao ao codigo !!!

13/07/2004 6:38pm (~20 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)