Avatar billede jvjensen Nybegynder
17. april 2009 - 21:45 Der er 4 kommentarer

Find næste og forrige id i MySQL

Hey alle.. Jeg skal bruge en måde så jeg kan finde id´et på næste post, og forrige post i databasen... Således at hvis jeg har hentet posten med id 12, så skal den (hvis de findes) fortælle mig at næste er id=13 og forrige id=11... eller forrige =8 hvis f.eks id 9 og 10 ikke findes..

Håber nogle kan hjælpe..
Avatar billede simotho Nybegynder
17. april 2009 - 21:48 #1
Du kan vel bruge noget $_GET[id] og så skriver - og + alt efter om det er forrige eller næste post :)
Avatar billede jvjensen Nybegynder
17. april 2009 - 22:09 #2
Ja det kunne man men det vil ikke virke hvis den post man er på hedder id=10 og i databasen er nyheden med id 9,8,7 er slettet.. Hvis så man står på 10 og skriver minus, vil man ryge ned til id 9, og den findes jo ik....
Avatar billede Henrik_JS Nybegynder
17. april 2009 - 22:32 #3
Den må du kunne klare med nogen if (!id) sætninger, så du kan sende den videre.

eks. på retursiden kan du lave en lille kontrol i toppen der checker om der enig er noget der.

jeg antager at du har en GET variable med id i som du bruger til at linke rundt på de forskellige data i tabellen.

du kunne lave et check lige før din while løkke om der er kommer noget retur i den.
eks
while($row = mysql_fetch_assoc($data)) {
$navn = $row['navn']
if ($navn = '') { $_GET['id'] = $_GET['id]++;
header("url:blah.php?id?$_GET['id] }
}
eller noget i den stil burde fungere som et check, sådan ville jeg have lavet det :)

Håber det hjælper :)
Avatar billede jvjensen Nybegynder
17. april 2009 - 22:52 #4
Fandt lige en skide god Mysql_query til det...

til at finde forrige:

      SELECT field1
      FROM tablename
      WHERE id < $currentid
      ORDER BY id DESC
      LIMIT 1

Og til næste:

      SELECT field1
      FROM tablename
      WHERE ID > $currentid
      ORDER BY id ASC
      LIMIT 1
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester