mysql - jump to id*

loki2002

Erfahrenes Mitglied
(ich weiss nicht ob das hier oder in mysql besser aufgehoben ist.. wenn nicht dann sorry ;))


Hallo,

ich habe folgende 2 fragen an euch, waere nett wenn mir jemand helfen koennte, danke schonmal im vorraus. :)

1. wie kann ich via link eine art "jump" abfrage machen.. d.h ich habe zb. 2500 eintraege in meiner datenbank und moechte das der user automatisch immer 50 beitraege ueberspringen kann, wenn er auf den link klickt ...? (bsp. der user ist gerade bei dem post id=15 und klickt den link und sieht dann post id=65)

2. wie ist das wenn der user bei post 1500 die seite verlaesst.. ich moechte nun das er beim naechsten besuch die seite 1501 angezeigt bekommt.. und nicht alles erneut von 0 an?

ich hoffe das ich es einigermassen erklaert habe... ist nicht ganz einfach als neuling soetwas genau zu beschreiben, ich hoffe ihr habt verstaendnis dafuer :-)
 
<?php
$res = mysql_db_query($mysqldbname, "select * from xxx where 1 order by date desc");
$num = mysql_num_rows($res);
if (empty($i)) $i = 0;
if ($i < 0) $i = 0;
$end = $i+50;
if ($end > $num) $end = $num;

while ($i < $end)
{
$data = mysql_result($res, $i, "data");
echo $data;
}

$i = $i-100;
if ($i+50 > 0)
{
echo "<a href="blubb.php?i=$i">vorherige seiten</a>";
}
if ($end < $num)
{
echo "<a href="blubb.php?i=$end">nächste seiten</a>";
}
?>
So würde ich das machen ... falls ich das richtig verstanden habe, das mit dem beim nächsten besuch da anfangen wo beim letzten aufgehört musst du am besten mit cookies machen oder in ne datenbank speichern etc.
 
Zuletzt bearbeitet:
Hey super!

danke @fryshorts

..abspeichern in die datenbank? was genau soll ich dort festhalten.. cookies wollte ich eigentlich vermeiden, wenn das moeglich ist.:-)
 
naja irgendeine id von ihm loginnamen oda so und wo er gerade ist immer speichern und beim nächsten login dann da anfangen, so z.B:
<?php
if (isset($username))
{
$res = mysql_db_query($mysqldbname, "select * from xxx_users where username = '$username' order by date desc");
$i = mysql_result($res, 0, "Seite");
$o = $i+30;
mysql_db_query($mysqldbname, "update from xxx_users set Seite = '$o' where username = '$username'");
}
$res = mysql_db_query($mysqldbname, "select * from xxx where 1 order by date desc");
$num = mysql_num_rows($res);
if (empty($i)) $i = 0;
if ($i < 0) $i = 0;
$end = $i+50;
if ($end > $num) $end = $num;

while ($i < $end)
{
$data = mysql_result($res, $i, "data");
echo $data;
}

$i = $i-100;
if ($i+50 > 0)
{
echo "<a href="blubb.php?i=$i">vorherige seiten</a>";
}
if ($end < $num)
{
echo "<a href="blubb.php?i=$end">nächste seiten</a>";
}
?>

So ähnlich irgendwie ...
 
gut erstmal danke, ich werde das mal probieren... wird wohl nicht mein letzter post in der sache gewesen sein :-) ...

danke @fryshorts
 
Zurück