Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> liczenie stron
tom23
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 21.04.2002
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Mam zrobiona wyszukiwarke na Mysql i jak wpisze dane słowo to mi zwraca liste znalezionych rekordów ( prawidlowo ) (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Ale jak tych rekordow jest 5 czy 9 to Ok, ale gdy jest 200 czy 150 to lista robi sie strasznie dluga.
I chce zeby na strone byla lista 20 rekordow a reszta z donosnikami na dole strony Np.
1 2 3 Nastepny .
Tylko jest jeden problem nie wiem jak to zrobic.
Prosze o pomoc.

moj kodzik wyglada tak

<?php
mysql_connect ("moj serwer","user","*******");
mysql_select_db (mojabaza);
if($stan=='szukaj') {
$zapytanie = "SELECT * FROM towary where symbol like "%$znajdz%" or nazwa like "%$znajdz%"
ORDER BY nazwa";
$wykonaj = mysql_query ($zapytanie);
$znaleziono = mysql_num_rows($wykonaj);
if ($znaleziono == "0")
{
print " ";
}
else
{
print "<DIV> Znaleziono trafień $znaleziono.<br></div>";
}


while($wiersz=mysql_fetch_array ($wykonaj)) {
echo " <tr>
<td width="30%"><DIV>".$wiersz['symbol']."</DIV></td>
<td width="70%"><div>".$wiersz['nazwa']."</div></td>
</tr>";
}
}
{
echo "</table>";
if ($znaleziono == "0")
{
print "<CENTER> Nie znaleziono żadnego rekordu</CENTER>";
}

echo "<TABLE border=0 align=center ><tr>

<td><center><br>
<form method="get" action="index.php">
<input type="text" name="znajdz" size="20" VALUE="czego szukasz" ><BR>
<input type="submit" value="szukaj" name="stan"></form></center></TD>";
echo "</TR></TABLE>";
}
?>


Czy ktos mi pomoze ?

Tomek
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
domm
post
Post #2





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 19.03.2002
Skąd: Gliwice

Ostrzeżenie: (0%)
-----


W Twoim zapytaniu SQL:
Kod
SELECT * FROM towary where symbol like "%$znajdz%" or nazwa like "%$znajdz%"

ORDER BY nazwa

brakuje polecenia LIMIT X,Y (na końcu) które zawęzi liczbę znalezionych rekordów. X to numer rekordu od którego mają zostać prezentowane wyniki, a Y to ich ilość. Żeby to miało ręce i nogi, potrzebujesz jeszcze "pre-zapytania" np:
Kod
SELECT COUNT(*) FROM....
(bez limitu oczywiście), które pozwoli określić sumaryczną liczbę wyników. Znając liczbę wyników dzielisz sobie je na strony w zależności od tego ile chcesz wyświetlać (zmienna Y), a poźniej np. get-em do każdego dynamicznie wyświetlonego linku dodajesz zmienną X. Sorki że tak opisowo, ale chyba będzie lepiej jak sam napiszesz taki prosty skrypt :wink:
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.09.2025 - 17:01