Afisare cu paginare
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
cadou
- Mesaje:328
Afisare cu paginare
Am acest cod, functioneaza perfect, dar doresc sa am paginare, mai exact 10 inregistrari pe pagina, cum fac acest lucru ?
aici e codu folosit pentru afisare
Cod: Selectaţi tot
<?php
session_start();
require_once('conectare.php');
$cerereSQL = 'SELECT * FROM `statusuri`';
$rezultat = mysql_query($cerereSQL);
while($rand = mysql_fetch_array($rezultat))
{
echo '
<table border=0 width=100%><tr><td bgcolor=silver>
Adaugat de <b>'.$rand['nume'].'</b> in <b>Statusuri '.$rand['categorie'].'</b> la
<b>'.$rand['data'].'</b>
<br>'.$rand['status'].'
<br>
<center><a href="ymsgr:customstatus?">Puneti acest status</a>
<a href="ymsgr:im?msg='.$rand['status'].' " style="color:#000000;" title="Trimite Statusuri pe Messenger">Trimite pe Messenger</a>
</center></td></tr></table>';
}
?>
MarPlo
Mesaje:4343
Pentru paginare trebuie un cod ceva mai complex.
Vezi script-urile acestea (au comentarii cu explicatie in cod, pt cine vrea sa invete cum se face un script de paginare):
-
Clasa PHP pentru Paginare .
-
Script paginare .
Sau cauta si pe forum despre paginare, subiectul mai e postat.
cadou
Mesaje:328
Merge perfect , l-am folosit pe acesta, Link:
https://marplo.net/php-mysql/paginare
dar am vrut sa fac o mica modificare si nu am reusit, poate ma ajuta careva.
Am vrut sa fac adresa de genul:
site.ro/statusuri/pagina2
La mine apare acum asa:
site.ro/statusuri.php?currentpage=2
Am incercat sa modific aici dar degeaba :
Cod: Selectaţi tot
<a href='{$_SERVER['PHP_SELF']}/pagina1'><<</a>
Dar degeaba nu functioneaza, daca stiti voi unde sa modific raman dator.
MarPlo
Mesaje:4343
Ca sa ai o adresa URL rescrisa, pe langa modificarea link-ului in tag-ul <a> trebuie si cod de rescriere in fisier .htaccess (serverul trebuie sa permita Mod-rewrite).
Cam asa ar fi codul in ".htaccess".
Cod: Selectaţi tot
Options +FollowSymLinks
RewriteEngine On
# Incepe comanda pt. mod-rewrite
RewriteRule ^statusuri/pagina([0-9]+)$ statusuri.php?currentpage=$1 [NC,L]
Mai multe despre asta vezi in tutorialul
Mod-Rewrite .
cadou
Mesaje:328
Deci .htaccess asa arata la mine;
Cod: Selectaţi tot
Options +FollowSymLinks
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z_]+).html$ index.php?id=$1 [NC,L]
RewriteRule ^([a-zA-Z_]+)-([a-zA-Z_]+).html$ index.php?id=$1&sm=$2 [NC,L]
ErrorDocument 400 /400.html
ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html
DirectoryIndex index.php index.html wellcome.html
RewriteRule ^statusuri/pagina([0-9]+)$ statusuri.php/?currentpage=$1 [NC,L]
Iar in document am modificat in cele 3 locuri din
Cod: Selectaţi tot
<a href='{$_SERVER['PHP_SELF']}?currentpage=1'>
In:
Cod: Selectaţi tot
<a href='{$_SERVER['PHP_SELF']}/currentpage=1'>
Si nu imi merge
MarPlo
Mesaje:4343
Daca in .htaccess ai:
statusuri/pagina([0-9]+)
La link ar trebui "pagina1". De ce ai pus "currentpage=1"?
Verifica codul HTML a paginii in browser ca adresa "href" de la link-urile de paginare sa se potriveasca cu expresia din .htaccess.
cadou
Mesaje:328
Deci am schimbat din
Cod: Selectaţi tot
<a href='{$_SERVER['PHP_SELF']}/currentpage=1'>
Cu
Cod: Selectaţi tot
<a href='http://www.site.ro/statusuri/pagina1'>
si nu imi merge error 404.html
iar daca las asa
imi apare in bara de adresa
site.ro/statusuri.php/pagina2
Dar nu imi afiseaza pagina 2 , deci tot prima pagina afiseaza
iar daca mai dau un click iar pe pagina 2 imi apare adresa asa
site.ro/statusuri.php/pagina2/pagina2
Si daca tot apas pe pagina a 2 a apare in adresa inca /pagina2 dar nu imi afiseaza pagina respectiva.
Subiecte similare
- Afisare numar cel mai mare dintr o coloana
PHP - MySQL - XML
Primul mesaj
Bună Marplo
Vreau să extrag din coloan pret cel mai mare numar ca de exemplu 4444.
Mie imi afisează 54 în loc de 4444, dacă în loc de 4444 modific...
Ultimul mesaj
Am schimbat `pret` varchar(20) DEFAULT NULL in `pret` int(11) NOT NULL ca la tine si merge.
Multumesc