Witam.
Tak, wiem że już było z 5 razy na tym forum. Jednak nie udało mi się dopasować żadnego z tych kodów, które już były dla mojego prostego (myślę) przykładu.
Problem jest taki, ze chcę pobrać najbliższe poprzednie/następne ID. Sposób Nospora wygląda obiecująco (chociaż nie wszystko rozumiem w jego zapytaniu), ale jednak nie działa według moich oczekiwań, co jest nie tak?
Oto kod:
<?php
$kid = $_GET['kid'];
$id = $_GET['id'];
$lista = mysql_query("SELECT plik FROM album_pliki WHERE id='$id' AND kid='$kid'");
$id = $row['id'];
$q = "SET @nr=0, @id='$id', @idprev=0, @idprevfound=0, @idnext=0, @idnextfound=0";
$q = "SELECT @nr := @nr +1, IF (id <> @id AND NOT @idprevfound , @idprev := id,
IF (@idprevfound , NULL , @idprevfound :=1)),
IF (id = @id , @idnextfound :=1,
IF (@idnextfound AND NOT @idnext , @idnext := id, NULL))
FROM album_pliki WHERE kid='$kid' ORDER BY id DESC";
$q="SELECT @idprev prev, @idnext next";
$poprzedni = $rekord['prev'];
$nastepny = $rekord['next'];
}
echo '<a href="galeria.php?kid='.$kid.'&id='.$poprzedni. '">Poprzedni</a>'; echo '<a href="galeria.php?kid='.$kid.'&id='.$nastepny. '">Następny</a><br /><br />'; echo '<img src="img/' .$row['plik']. '"border=0 alt="" />';
}
?>
kid - kategoria id (czyli do którego albumu przynależą dane pliki)
Tabelka wygląda mniej więcej tak:
id kid
1 1
2 2
3 1
4 1
Mając id=1 i kid=1, chcę aby po kliknięciu 'Następny' przeskakiwało z id=1 na id=3, a nie id=2..
Dzięki za jakiekolwiek sugestie (IMG:
http://forum.php.pl/style_emoticons/default/smile.gif)
Pozdrawiam
-- EDIT --
Problem rozwiązany.. Dla zainteresowanych przedstawiam kod:
<?php
$kid = $_GET['kid'];
$id = $_GET['id'];
$lista = mysql_query("SELECT plik FROM album_pliki WHERE id='$id' AND kid='$kid'");
FROM album_pliki
WHERE id > '$id'
AND kid='$kid'
ORDER BY id ASC
LIMIT 1");
$nastepny = $n['id'];
}
if ($nastepny == '') {
$nastepny = $_GET['id'];
}
FROM album_pliki
WHERE id < '$id'
AND kid='$kid'
ORDER BY id DESC
LIMIT 1");
$poprzedni = $p['id'];
}
if ($poprzedni == '') {
$poprzedni = $_GET['id'];
}
echo '<a href="galeria.php?kid='.$kid.'&id='.$poprzedni. '">Poprzedni</a>'; echo '<a href="galeria.php?kid='.$kid.'&id='.$nastepny. '">Następny</a><br /><br />'; echo '<img src="img/' .$row['plik']. '"border=0 alt="" />';
}
?>
Ten post edytował guilty82 3.06.2008, 18:16:13