G greymane Medlem sedan juli 2001 711 inlägg Frågan 15 jan. 2002 13:11 #1 Hur gör man för att dela upp innehållet i en tabell på flera sidor? som tex på altavista när man får massor med träffar. jag gissar att det får bli nåt med limit.
L LarsG Medlem sedan dec. 2000 12 464 inlägg Jo, du har en pagestorlek och ett sidnummer. Utifrån dessa värden räknar man ut ett offset och sedan så bygger man sqlfrågan
$offset = $pagesize*($page-1);
$sql = "select * from t limit " . $offset . "," . $pagesize;
------------------
essentitia preter non sans multiplicandum
G greymane Medlem sedan juli 2001 711 inlägg Det där blev jag itne så klok på :/ hur sätts värdena på $page o $pagesize?
L LarsG Medlem sedan dec. 2000 12 464 inlägg Pagesize får du bestämma.
På varje sida som du skriver ut får du ha med länkar för att gå framåt och bakåt. Den länken innehåller då en querystring där man skickar page.
if (!isset($page) )
$page = 1;
$query = "select count(*) as antal from t";
// hämta antal poster
$pages = ($antal - 1)/$pagesize + 1;
// räkna ut offset
// visa data
if ( $page > 1 )
echo "<a href='dinsida.asp?page=" .
$page - 1 . "'> föregående</a>"
if ( $page < $pages )
echo "<a href='dinsida.asp?page=" .
$page + 1 . "'> nästa</a>"
Sen så kan du göra mer avancerat genom att ha direktlänkar till olika sidor.
------------------
essentitia preter non sans multiplicandum
G greymane Medlem sedan juli 2001 711 inlägg jag hänger helt enkelt inte med :r ...
kan du beskriva vad de olika variablerna betyder?
eller känner ngn till nån lämplig HOWTO så behöver ingen beskrivning på dagisnivå tas upp här...
G greymane Medlem sedan juli 2001 711 inlägg tro det eller ej, efter måånga timmar har jag äntligen fått det att funka. fast ett nytt bekymmer har uppstått. min sqlsats ser ut som följer:
"SELECT artistinfo.ID AS AID, enamn, fnamn, typ, liten, bilder.id AS BID FROM bilder, artistinfo
WHERE (typ='$HTTP_GET_VARS[typ1]' OR typ='$HTTP_GET_VARS[typ2]' OR typ='$HTTP_GET_VARS[typ3]'
OR typ='$HTTP_GET_VARS[typ4]') AND AID=artistinfo.id order by enamn, fnamn LIMIT ". $offset . "," . $pagesize;
alltså blir frågan: finns det nåt smidigt sätt att plocka med värdena på $HTTP_GET_VARS[typ1.2.3.4] utan att behöva skriva in dem i länken?
alltså slippa detta:
<a href=minsida.php?typ1=<?echo $HTTP_GET_VARS[typ1]?>&typ2<?echo $HTTP_GET_VARS[typ2]?>&typ3=<?echo $HTTP_GET_VARS[typ3]?>
L LarsG Medlem sedan dec. 2000 12 464 inlägg Kan du lagra värdena i session?
http://www.php.net/manual/en/ref.session.php
------------------
essentitia preter non sans multiplicandum
Compusa Medlem sedan jan. 2002 3 327 inlägg Går det att göra på detta vis med ASP också eller har det bara PHP som har stöd för denna funktionen
------------------
Nytt nickname, tidigare "känd" under namnet iceM2
L LarsG Medlem sedan dec. 2000 12 464 inlägg Ja det går, funktionen limit har inget med php att göra.
------------------
essentitia preter non sans multiplicandum
Compusa Medlem sedan jan. 2002 3 327 inlägg Nej, men jag har hört att ASP inte har fullt mySQL stöd eller har jag fel?
------------------
Nytt nickname, tidigare "känd" under namnet iceM2
L LarsG Medlem sedan dec. 2000 12 464 inlägg Det finns inget specifikt stöd för olika dbms i ASP.
Det är tvärtom, Mysql har inte stöd för alla ODBC-funktioner som ADO använder.
------------------
essentitia preter non sans multiplicandum
Compusa Medlem sedan jan. 2002 3 327 inlägg Tackar då vet jag det :)
------------------
Nytt nickname, tidigare "känd" under namnet iceM2