Pagination

zendooo Messages postés 2 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 9 mai 2008 - 9 mai 2008 à 16:53
zendooo Messages postés 2 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 9 mai 2008 - 9 mai 2008 à 17:00
Bonjour,
je viens de ressortir un script que j'avais acheté il y a longtemps, je souhaite modifier la pagination qui affiche toutes les pages.
Je voudrai une pagination de 10 pages puis un lien vers les 10 suivantes.voici le code de la pagination.



<?php

class MySQLPagedResultSet
{

var $results;
var $pageSize;
var $page;
var $row;

function MySQLPagedResultSet($sql,$pageSize,$cnx)
{
if (!isset($_GET['resultpage'])) { $resultpage=''; }
else { $resultpage = $_GET['resultpage']; }

$this-??>results = @mysql_query($sql) or die(mysql_error());
$this->pageSize = $pageSize;
if ((int)$resultpage <0) $resultpage 1;
if ($resultpage > $this->getNumPages())
$resultpage = $this->getNumPages();
$this->setPageNum($resultpage);
}

function getNumPages()
{
if (!$this->results) return FALSE;

return ceil(mysql_num_rows($this->results) /
(float)$this->pageSize);
}

function setPageNum($pageNum)
{
if ($pageNum > $this->getNumPages() or
$pageNum <= 0) return FALSE;

$this->page = $pageNum;
$this->row = 0;
mysql_data_seek($this->results,($pageNum-1) * $this->pageSize);
}

function getPageNum()
{
return $this->page;
}

function isLastPage()
{
return ($this->page >= $this->getNumPages());
}

function isFirstPage()
{
return ($this->page <= 1);
}

function fetchArray()
{
if (!$this->results) return FALSE;
if ($this->row >= $this->pageSize) return FALSE;
$this->row++;
return mysql_fetch_array($this->results);
}

function getPageNav($cat='', $url_rewrite)
{
$nav = '';
if (!$this->isFirstPage())
{
$page = ($this->getPageNum()-1);
$url = ereg_replace('#CATEGORIE#',$cat,$url_rewrite);
$url = ereg_replace('#PAGERESULTAT#',"{$page}",$url);
$nav .= "[\"".$url."\" Precedente] ";
}
if ($this->getNumPages() > 1)
for ($i=1; $i<=$this->getNumPages(); $i++)
{
if ($i==$this->page) {
$nav .= "$i ";
}
else {
$url = ereg_replace('#CATEGORIE#',$cat,$url_rewrite);
$url = ereg_replace('#PAGERESULTAT#',"{$i}",$url);
$nav .= "[\"".$url."\" $i] ";
}
}
if (!$this->isLastPage())
{
$page = ($this->getPageNum()+1);
$url = ereg_replace('#CATEGORIE#',$cat,$url_rewrite);
$url = ereg_replace('#PAGERESULTAT#',"{$page}",$url);
$nav .= "[\"".$url."\" Suivante]";

}

return $nav;
}
}

?>
<?php
for($i = 0 ; $i < $max_pg ; $i++) {
echo ' '.$i.'';
}
?>



si quelqu'un a une idée, je suis preneur.

Cordialement

1 réponse

zendooo Messages postés 2 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 9 mai 2008
9 mai 2008 à 17:00
Copier coller qui a foiré, voici le code:

<?php

class MySQLPagedResultSet
{

var $results;
var $pageSize;
var $page;
var $row;

function MySQLPagedResultSet($sql,$pageSize,$cnx)
{
if (!isset($_GET['resultpage'])) { $resultpage=''; }
else { $resultpage = $_GET['resultpage']; }

$this->results = @mysql_query($sql) or die(mysql_error());
$this->pageSize = $pageSize;
if ((int)$resultpage <0) $resultpage 1;
if ($resultpage > $this->getNumPages())
$resultpage = $this->getNumPages();
$this->setPageNum($resultpage);
}

function getNumPages()
{
if (!$this->results) return FALSE;

return ceil(mysql_num_rows($this->results) /
(float)$this->pageSize);
}

function setPageNum($pageNum)
{
if ($pageNum > $this->getNumPages() or
$pageNum <= 0) return FALSE;

$this->page = $pageNum;
$this->row = 0;
mysql_data_seek($this->results,($pageNum-1) * $this->pageSize);
}

function getPageNum()
{
return $this->page;
}

function isLastPage()
{
return ($this->page >= $this->getNumPages());
}

function isFirstPage()
{
return ($this->page <= 1);
}

function fetchArray()
{
if (!$this->results) return FALSE;
if ($this->row >= $this->pageSize) return FALSE;
$this->row++;
return mysql_fetch_array($this->results);
}

function getPageNav($cat='', $url_rewrite)
{
$nav = '';
if (!$this->isFirstPage())
{
$page = ($this->getPageNum()-1);
$url = ereg_replace('#CATEGORIE#',$cat,$url_rewrite);
$url = ereg_replace('#PAGERESULTAT#',"{$page}",$url);
$nav .= "[?page='.$i.'&nb='.$nb.' '.$i.']';
}
?>
0
Rejoignez-nous