No tak, prozaiczne przeoczenie. Dzieki
moze w tym samym temacie wkleje inny problem:
wyskakuje mi blad :
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\3dlab2\show_news_page.php5 on line 25
podkreslilem 25 linie...
moze w tym samym temacie wkleje inny problem:
wyskakuje mi blad :
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\3dlab2\show_news_page.php5 on line 25
podkreslilem 25 linie...
Kod PHP:
<?php
// funkcja odpowiedzialna za stronicowanie newsów - show_news_page.php5
function show_news_page($page=0)
{
// ustalenie limitu newsów na pojedynczą stronę, w tym wypadku 8
define('NEWS_LIMIT',4);
// połączenie z bazą
$db=mysql_connect('localhost','root','krasnal','testowa') or die('Błąd połączenia z bazą danych!');
// uzyskanie ilości newsów w bazie
$news_amount=mysql_query("SELECT Count(id) From test");
// podział na strony - dzielenie ilości newsów przez limit na pojedynczej stronie
// i zaokrąglenie wyniku w górę (funkcja ceil)
$pages_amount=ceil($news_amount/NEWS_LIMIT);
// i ilość stron już jest znana (zmienna $pages_amount)
// uzyskanie numeru rekordu, od którego należy zacząć pobieranie
// czyli mnożenie ilości stron przez numer aktualnej (aktualna strona to argument funkcji)
$start=$pages_amount*$page;
// pobranie porcji newsów. Zwróć uwagę na klauzulę Limit. To ona pozwala stronicować dane.
// jej pierwszy parametr to numer (numer, nie ID) rekordu od którego zacząć pobieranie
// drugi parametr to ilość rekordów do pobrania
$news=mysql_query("Select * From test Order By test_id Desc Limit $start,NEWS_LIMIT");
// zamknięcie połączenia - baza danych nie będzie już potrzebna
mysql_close($db);
// wyświetlenie newsów w pętli
# 25 linia
while($row=mysql_fetch_assoc($news))
# --------------------------------------------------------
{
echo $row['imie'].'<br />';
echo $row['tekst'].'<hr />';
}
// funkcja zwraca ilość stron - później będzie nam potrzebna do stworzenia nawigatora.
return($pages_amount);
}
?>