Pagination avec ADODB_PAGER et PHP

Signaler
Messages postés
49
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
17 février 2009
-
Messages postés
49
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
17 février 2009
-
Bonjour à tous,


J'utulise les la librairie adodb avec le langage php.

Je rencontre une difficulté: En effet, j'arrive à extraire la première
page de mes resultats de requete mais je ne peux pas passer à la page
suivante.


Dans mon script:


    $sql="";

    $pager = new ADODB_Pager(&$conn,$sql);   

        //$pager->Render($rows_per_page=20);

        $pager->showPageLinks = true;

        $pager->linksPerPage = 10;

        //$pager->cache = 60;

        $pager->Render($rows=20);

       

Resultats:
<!--[if gte vml 1]><v:shapetype id="_x0000_t75"
coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"
filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:99pt;
height:90pt'>
<v:imagedata src="file:///C:\DOCUME~1\koyao\LOCALS~1\Temp\msohtml1\01\clip_image001.png"
o:title="" croptop="14617f" cropbottom="34722f" cropleft="33804f"
cropright="17400f"/>
</v:shape><![endif]--><!--[if !vml]--><!--[endif]-->J'obtiens
le tableau de resultats  comme sur le tutoriel 
(http://phplens.com/phpeverywhere/adodb_french)  mais je n'arrive pas à
naviguer entre les pages.


Merci à la personne qui en sais quelque chose.

2 réponses

Messages postés
144
Date d'inscription
vendredi 18 avril 2003
Statut
Membre
Dernière intervention
4 janvier 2010

Bonsoir,

J'ai regardé la doc dont tu fais référence. Le truc c'est que pour moi il manque un endroit ou lui dire à quelle page tu es....

Juste un truc :
perso je mettrais $pager->Render(20);

Regarde et dis mois

Flo
Messages postés
49
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
17 février 2009

Salut,

merci pour ton message.
Au fait l:  pager->Render(20); est une methode pour qui permet de fixer le nombre de ligne  à afficher par par page, et c'est ce que j'ai utilisé mais en lui attribuant une valeur à $rows_per_page  paramettre de la methode.Bref..

J'ai finalement mofifier un peu le code en  faisant appel à d'autre function de la classe pager comme ci-dessous:

$pager = new ADODB_Pager(&$conn,$sql);
        $pager->Render($rows_per_page=20);
        $pager->showPageLinks = true;
        $pager->linksPerPage = 10;
        $pager->Render($rows=20);
        $pager->render_next($anchor=true);
        $pager->render_last($anchor=true);
        $pager->render_prev($anchor=true);
        $pager->Render_First($anchor=true);

avec cette modif, la pagination marche bien  mais  j'ai qd même un message d'erreur :
Fatal error: Call to abmenber function on a non_object in ../adodb_pager.inc.php , je cherche à savoir exactement pour quoi mais je n'ai aucune idée de cet erreur actuellement .

Voila...