lol99
9.11.2010, 19:20:23
witam
chce pograć ostatni rekord z tabeli news
index.php?page=news&id=
numergdy id będzie
1 wyświetli się ostatni news, gdy
2 to przedostatni, itd
$zapytanie = "SELECT text, tytul, data, autor FROM news ";
{
//wyswietlanie
}
proszę o podpowiedz
Soulast
9.11.2010, 19:23:14
if (isset ($_GET['id'])) { $newsid = (int
)$_GET['id'];}
$zapytanie = "SELECT text, tytul, data, autor FROM news WHERE id='$newsid' ";
{
//wyswietlanie
}
Wykonujesz to używając GET
lol99
9.11.2010, 19:26:25
mi chodzi o taka jakby paginacje,
załóżmy, ze ostatni news ma id 18 po wywołaniu strony
index.php?page=news&id=1
ma wyświetlić się właśnie ostatni wpis czyli id 18
Mlodycompany
9.11.2010, 19:49:24
no to sprawdzasz ile jest rekordów w tabeli, odejmujesz wartość GET['id'], dodajesz do wyniku 1 i masz w tym momencie id rekordu który chcesz wyświetlić np. rekordów jest 18, GET['id'] = 2: 18 - 2 + 1 + 17 czyli przedostatni. Rozwiązanie trochę łopatologiczne, ale z pewnością działa
hondek
9.11.2010, 20:00:03
Jeżeli chcesz wyświetlić ostatni rekord to po prostu posortuj tabele malejąco DESC i daj limit 1 np.
SELECT * FROM news ORDER BY id DESC LIMIT 1
lol99
9.11.2010, 20:01:54
tak, ale co jeśli ostatni ma id99
a przed ostatni 96?
hondek
9.11.2010, 20:06:42
Ano właśnie to, że jest coś takiego jak offset

czyli jak chcesz przedostatni to wyciągasz jeden rekord posortowanej tabeli malejąco zaczynając od 2 rekordu czyli :
SELECT * FROM news ORDER BY id DESC LIMIT 1 OFFSET 2