[ Predrag Gajic @ 28.09.2004. 23:34 ] @
Evo koda kojim ja uzvlacim iz baze
Code:

<?php
include "connect.php";
$result = mysql_query('select * from razmena') or
die (mysql_error());
while ($row = mysql_fetch_array($result))
{
echo "<table border=3 align=center bgcolor=#00FF00 bordercolor=#FF0000 summary=>
echo "<tr><td width=468 height=60><br>";
echo "<a href='$row[adresasajta]'><img src='$row[adresabanera]'></a>";
echo "<br>";
echo "<b>O sajtu:</b><br> <font color=#ff0000>$row[osajtu]</font>";

echo "</td></tr></table>";
echo "<br>\n";
echo "<br>\n";
echo "<br>\n";
}
mysql_free_result($result);
?>


Ovaj kod mi izlista sve sajtove na jednoj stranici,
a ja hocu da izbaci recimo samo 4 sajta po stranici
Znaci želim da bude nešto na ovu foru
Strana:1,2,3,4...(koliko vec bude,zavisi od broja sajtova)
<<Prethodna ||| Sledeca >>
Samo da napomenem da svaki sajt ima svoj i datum(upisivanja) u bazi
Nadam se da ste svatili šta želim....

P.S. Mislim da je potreban drugaciji kod za izvlacenje iz baze,ali ne znam kako da ga napišem :))


[Ovu poruku je menjao -zombie- dana 29.09.2004. u 02:34 GMT+1]
[ _owl_ @ 28.09.2004. 23:54 ] @
Pa sta ti tacno predstavlja problem (inace siguran sam da u PHP forumu postoje bar 2-3 teme koje se odnose na isti problem, a sadrze i kompletne primere sa kodom)??
Da bi uspesno napravio prikaz na vise strana treba da znas koliko strana ima i koliko stavki prikazujes po strani. Samo vadjenje podataka za odgovarajucu stranu mozes da vrsis na vise nacina. Mozes da koristis LIMIT klauzulu u samom SQL upitu (u tom slucaju treba da imas jos jedan upit koji koristi COUNT(*) i prebrojava koliko redova ce se prikazivati), ili mozes da selektujes sve podatke koje ces prikazivati, a onda u zavisnosti od strane da se setas kroz result set preskacuci podatke koje ne treba da prikazes (u ovom slucaju u petlji za prikaz imas brojac redova koji poredis sa opsegom podataka koje treba da prikazes).
[ appatique @ 30.09.2004. 20:49 ] @
Ćaos...

Citat:
_owl_:...Mozes da koristis LIMIT klauzulu u samom SQL upitu (u tom slucaju treba da imas jos jedan upit koji koristi COUNT(*) i prebrojava koliko redova ce se prikazivati),

Nemaš potrebe za COUNT-om, LIMIT sam radi limitiranje izlaza (kao što i sama reč kaže).
No, u tom slučaju moraš da napraviš mehanizam pamćenja i prenošenja vrednosti limitiranja sa forme na formu, kako bi kretanje bilo konzistentno!

Citat:
_owl_:... ili mozes da selektujes sve podatke koje ces prikazivati, a onda u zavisnosti od strane da se setas kroz result set preskacuci podatke koje ne treba da prikazes (u ovom slucaju u petlji za prikaz imas brojac redova koji poredis sa opsegom podataka koje treba da prikazes).

Ne bih ti to savetovao, "jede" memoriju nepotrebno; zato je i uvedena ključna reč LIMIT (živeo Rasmus Lerdorf).

Toliko od mene, pozdrav.
[ _owl_ @ 30.09.2004. 23:45 ] @
Citat:
Nemaš potrebe za COUNT-om, LIMIT sam radi limitiranje izlaza (kao što i sama reč kaže). No, u tom slučaju moraš da napraviš mehanizam pamćenja i prenošenja vrednosti limitiranja sa forme na formu, kako bi kretanje bilo konzistentno!


Stvarno, nisam znao za to. Nego ako ne zna koliko ukupno redova zadovoljava uslov za ispis kako ce onda znati koliko strana treba da se prikaze (hint sintaksa LIMIT start, offset -- treba znati gornju granicu intervala iz koga start moze da uzme vrednost).


[ mordor @ 02.10.2004. 16:28 ] @
Postovao sam pre izvesnog vremena kompletan kod za ovo... potrazi malo
[ mordor @ 02.10.2004. 16:30 ] @
Da ne zaboravim imas fantasticnih primera ove tematike na sajtu:
http://www.fuckinggoogleit.com/

Mogao bi i tamo malo da procackas ;)