Avatar billede kornum Nybegynder
19. januar 2004 - 20:58 Der er 5 kommentarer og
1 løsning

Forrig række i mysql?

Hejsa.. Sidder med noget billed galeri.. Nu vil jeg så trække ud fra databasen hvilket billedet det næste er det gør jeg sådan her..

mysql_query("SELECT * FROM billede where serieid='$serieid' order by id asc limit $pic,1") or die (mysql_error());

Det går ganske fint og får næste række.. Men hvordan kan jeg få forrige? Det glipper altså.. har prøvet med desc og alt muligt, har vist set mig blind på det :(
Avatar billede ahv Nybegynder
19. januar 2004 - 22:44 #1
Jeg lavede for længe siden dette til en anden her på eksperten, måske du kan finde en løsning udfra det ->

<?php
$connection = mysql_pconnect($server,$username,$password);
mysql_select_db($database);

$gal_id = $_GET[gal_id];
$visfra = $_GET[visfra];

if (!isset($_GET[visfra])) {
    $visfra = mysql_num_rows(mysql_query("SELECT * FROM gallery WHERE gal_id='$gal_id' ORDER BY gallery_id LIMIT $_GET[gallery_id]"))-1;
}

$query = mysql_query ("SELECT * FROM gallery WHERE gal_id = '$gal_id' LIMIT $visfra, 1");
$row = mysql_fetch_array($query);
echo "<img src='$row[url]' alt=''>";

if ($visfra > 0) {
    $bagud = $visfra - 1;
    echo "<a href='$_SERVER[PHP_SELF]?visfra=$bagud&gal_id=$gal_id'>Forrige billede</a>";
}

$antal = mysql_num_rows(mysql_query("SELECT * FROM gallery where gal_id='$gal_id'"));
if ($visfra < $antal - 1) {
    $naeste = $visfra + 1;
    echo "<a href='$_SERVER[PHP_SELF]?visfra=$naeste&gal_id=$gal_id'>Næste billede</a>";
}
?>
Avatar billede erikjacobsen Ekspert
19. januar 2004 - 22:50 #2
Hvis du har en post med id=7, og du gerne vil have den forrige, og ikke aner
om det er nummer 6, 5, 4, 3, 2, 1 eller den slet ikke er der, så skal du bare


  select * from dintabel where id<7 order by id desc limit 1

Hvis den er der, så får du den, ellers får du 0 rækker.
Avatar billede kornum Nybegynder
19. januar 2004 - 23:09 #3
Smukt Erik! Hvis du smider et svar er pointene dine.. virkede jo første gange!

Slap da af det er godt - mange takker!

Ahv.. sad og bøvlede med dit indtil jeg lige prøvede Eriks svar.. Mange takker for det ahv var ved at lykkes.. men ikk helt :) Så poinene får Erik.. Men tak for hjælpen og forsøget hjalp mig på mig!
Avatar billede Slettet bruger
20. januar 2004 - 00:15 #4
Og så huske where serieid = '$serieid' i eriks sql også.
Avatar billede erikjacobsen Ekspert
20. januar 2004 - 08:20 #5
Ellers tak, jeg samler ikke på point.
Avatar billede kornum Nybegynder
20. januar 2004 - 14:15 #6
Jeps gjorde jeg oz mercur08...

Men k Erik så tager jeg dem da selv for at lukke... THX
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
Computerworld tilbyder specialiserede kurser i database-management

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