Я пытаюсь разработать php фотоальбом … и у меня есть picture_id и album_id поле в таблице mysql … и имя таблицы – это фотографии
теперь я хочу получить следующее и предыдущее поле picture_id в том же альбоме … скорее, это серия или нет … т.е.
picture_id = 3242 album_id = 23
следующая фотография
picture_id = 5249 album_id = 23
попробуйте:
SELECT picture_id FROM whatever WHERE album_id = 23 AND picture_id > 3242 ORDER BY picture_id LIMIT 1
Этот запрос должен помочь вам:
$cur_picture_id = 3242; $cur_album_id = 23; $result = mysql_query("SELECT picture_id FROM photos WHERE album_id = $cur_album_id AND picture_id > $cur_picture_id ORDER BY picture_id LIMIT 1"); $result_ar = mysql_fetch_array($result); if($result_ar) { $next_picture_id = $result_ar['picture_id']; } else { // end of album }
Обратите внимание, что есть более эффективные способы выполнения таких запросов (подготовленные операторы, поэтому вы можете позволить компилятору связывать переменные для вас, а не просто вставлять их в строку), но это должно дать общее представление о том, что нужно сделать ,