Paginare in PHP

johhny | PHP | 1
💎 1 | 👁ïļ 1806

2023-02-05 15:57:54

M-am tot chinuit sa fac o pagina in PHP insa nu am reusit.
Paginile par a fi afisate ok, insa cand apas pe pagina 2, 3, 4 etc. imi apar aceleasi articole mereu.
 
Codul este cel de mai jos.
<?php 
$total_elemente = $db-&gt;DbGetOne("SELECT COUNT(*) FROM tarticole WHERE id_categorie = 1 AND activ = 1");



$elemente_pe_pagina = 4;



if (isset($_GET['pageno']) &amp;amp;&amp;amp; $_GET['pageno'] &gt; 1) {

    $page = $_GET['pageno'];



    $start = ($page - 1) * $elemente_pe_pagina;

}

else {

    $page = 1;

    $_GET['pageno'] = 1;



    $start = 0;

}



// How many pages will there be

$numar_de_pagini = ceil($total_elemente / $elemente_pe_pagina);

echo 'Pagina numarul:'.$page."<br>";

$articole = $db->DbGetAll("SELECT * FROM tarticole WHERE id_categorie = 1 AND activ = 1 ORDER BY id DESC LIMIT $start, $elemente_pe_pagina");

foreach ($articole as $key =&gt; $articol) {

	echo '&lt;pre&gt;';

	echo $articol['titlu'];

	echo '&lt;/pre&gt;';

}

echo '<nav><ul class="pagination">';

echo '<li class="page-item"><a class="page-link" href="gatit/pageno-1">Prima pagina</a></li>';

for($i = 1; $i <= $numar_de_pagini; $i++) {

echo '&lt;li class="page-item"&gt; &lt;a class="page-link" href="gatit/pageno-'.$i.'"&gt;'.$i.'&lt;/a&gt;&lt;li&gt;';

}

echo '<li class="page-item"><a class="page-link" href="gatit/pageno-'.$numar_de_pagini.'">Ultima pagina</a></li>';

echo '</ul></nav>';

?>


2023-02-05 18:54:04

In URL-uri ai pageno-'.$i.' in loc de pageno='.$i.'. asta ar trebuisa iti rezolve problema:
<?php 

$total_elemente = $db->DbGetOne("SELECT COUNT(*) FROM tarticole WHERE id_categorie = 1 AND activ = 1"); $elemente_pe_pagina = 4;

if (isset($_GET['pageno']) &amp;&amp; $_GET['pageno'] > 1) { $page = $_GET['pageno']; $start = ($page - 1) * $elemente_pe_pagina; } else { $page = 1; $_GET['pageno'] = 1; $start = 0; }

// How many pages will there be $numar_de_pagini = ceil($total_elemente / $elemente_pe_pagina); echo 'Pagina numarul:'.$page."<br>";

$articole = $db->DbGetAll("SELECT * FROM tarticole WHERE id_categorie = 1 AND activ = 1 ORDER BY id DESC LIMIT $start, $elemente_pe_pagina");

foreach ($articole as $key => $articol) { echo '<pre>'; echo $articol['titlu']; echo '</pre>'; }

echo '<nav><ul class="pagination">'; echo '<li class="page-item"><a class="page-link" href="gatit/pageno=1">Prima pagina</a></li>';

for($i = 1; $i <= $numar_de_pagini; $i++) { echo '<li class="page-item"> <a class="page-link" href="gatit/pageno='.$i.'">'.$i.'</a><li>'; }

echo '<li class="page-item"><a class="page-link" href="gatit/pageno='.$numar_de_pagini.'">Ultima pagina</a></li>'; echo '</ul></nav>'; ?>


âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ