Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Ogrqniczona ilość wyświetlanych prodoktów
#1
Witam
Przygodę z PHP i bazami danych dopiero zaczynam.Mam pewien problem ale moze najpierw przedstawię kod:
Kod PHP:
<?php 
                    $result 
mysql_query("SELECT *FROM `produkty` WHERE tag1='$tag1' LIMIT 0,10");
                    while (
$row mysql_fetch_array($resultMYSQL_NUM)) {
                        echo 
'<div class="obiekt">
                                <div class="fot">
                                <img src="'
,$row[4],'"/></div>
                                <div class="opis"><h4>'
,$row[3],'</h4></div>';
                        echo 
'</div>';
                    }
                    
mysql_free_result($result);
                    
?>

Kod:
Kolumna    Typ    Null    Domyślnie    Komentarze
ID    smallint(5)    Nie          
tag1    varchar(32)    Tak     NULL     
tag2    varchar(32)    Tak     NULL     
nazwa    text    Tak     NULL     
mzdjecie    text    Nie          
zdjecie    text    Nie          
Indeksy:

Nazwa klucza    Typ    Jednoznaczny    Spakowany    Kolumna    Moc    Metoda porównywania napisów    Null    Komentarz
PRIMARY    BTREE    Tak    Nie    ID    204    A

Chodzi mi zatem o to aby na stronie wyświetlała sie ograniczona ilość produktów np 30 gdy jest ich więcej Wyświetlany jest link do następnej strony.Da się to zrobić z tym kodem?Czy trzeba go przebudować?
Pozdrawiam i czekam na odpowiedź
Odpowiedz
#2
potrzebujesz systemu paginacji

przekazuj parametr w adresie np index.php?strona=2 i na podstawie tego parametru wyświetlaj np 10 pozycji począwszy od ($_GET['strona']-1)*10

$od_ktorej_pozycji=($_GET['strona']-1)*10;

... LIMIT $od_ktorej_pozycji,10

link Dalej to będzie aktualna strona+1 czyli $_GET['strona']+1 a wstecz -1

to tak w dużym uproszczeniu i bez żadnych zabezpieczeń
Odpowiedz
#3
Wielkie dzięki poradziłem już sobie z tym.Mam jeszcze jedno pytanie.Chciałbym aby sprawdzało mi ile jest wszystkich obiektów do wyświetlenia żebym mógł dodać nawigacja w stylu
|1|2|3|4 następna
Nie wiem jakie zapytanie w MYSQL wykorzystać.
Odpowiedz
#4
select count(*) from tabela; jeszcze chyba mozna tak select count(*) as ilosc from tabela;
Odpowiedz
#5
Poradziłem sobie jakoś ale z racji ze jestem początkujący raczej cieszyłem się z tego ze działa nie jak działa.Obawiam sie ze przy dużej ilości rekordów w bazie może byc problem z wydajnością. Macie jakies pomysly na przyspieszenie tego?

Kod PHP:
<?php 
        
($_GET['strona']-1)*20;
        
$od_ktorej_pozycji=($_GET['strona']-1)*20;
                    
$il mysql_query("SELECT *FROM `produkty` WHERE tag1='$tag1'");
                    
$result mysql_query("SELECT *FROM `produkty` WHERE tag1='$tag1' LIMIT $od_ktorej_pozycji,20");
                    
$ilosc mysql_num_rows($il);
                    
$ilosc ceil($ilosc/20);
                    while (
$row mysql_fetch_array($resultMYSQL_NUM)) {
                        echo 
'<div class="obiekt">
                                <div class="fot">
                                <img src="'
,$row[4],'"/></div>
                                <div class="opis"><h4>'
,$row[3],'</h4></div>';
                        echo 
'</div>';
                    }
                    
mysql_free_result($result);
                    for( 
$x 1$x <= $ilosc$x++ )
                    echo 
'
                    <div class="ilonav">
                    <h4>|<a href="produkty.php?tag1='
,$tag1,'&tag2=',$tag2,'&strona=',$x,'">',$x,'</a></h4>
                    </div>
                    '
;
                    
?>
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Ilość share'ów obok przycisku facebook soluffka 0 1,744 26-08-2011, 03:50
Ostatni post: soluffka
  Czy można wczytać z kontretną ilość z bazy danych? zebrowski1973 0 1,872 31-01-2011, 16:39
Ostatni post: zebrowski1973
  Php, smarty i ilość wyświetleń [nieaktualne] radar 1 2,004 17-10-2010, 18:27
Ostatni post: ixtab

Skocz do:


Użytkownicy przeglądający ten wątek:
Sponsorzy i przyjaciele
SeoHost.pl