Как вывести следующую строку mysql

V
На сайте с 16.01.2012
Offline
32
1071

Есть массив

$query = "SELECT * FROM `photos` WHERE `id` = '$id'"

$sql = mysql_query($query);

while ($photos = mysql_fetch_assoc($sql)) {

echo'<a href=\'/photo'.$photos['id'].'\'>';

}

Есть ли такая функция которая будет выводит следующий $photos['id'] по данному запросу?

bay_ebook
На сайте с 28.05.2010
Offline
111
#1
Vdmoze:
Есть массив


$query = "SELECT * FROM `photos` WHERE `id` = '$id'"
$sql = mysql_query($query);
while ($photos = mysql_fetch_assoc($sql)) {
echo'<a href=\'/photo'.$photos['id'].'\'>';
}

Есть ли такая функция которая будет выводит следующий $photos['id'] по данному запросу?


$query = "SELECT * FROM `photos` WHERE `id` = '$id' ORDER BY `id` LIMIT 1 OFFSET 1"

или


$query = "SELECT * FROM `photos` WHERE `id` > '$id' ORDER BY `id` LIMIT 1"
Нужен прогер на php+mysql+понимание чужего кода? (/ru/forum/540660) Вам сюда PHP-шаман (http://php-shaman.pw/)
V
На сайте с 16.01.2012
Offline
32
#2
bay_ebook:

$query = "SELECT * FROM `photos` WHERE `id` = '$id' ORDER BY `id` LIMIT 1 OFFSET 1"


или


$query = "SELECT * FROM `photos` WHERE `id` > '$id' ORDER BY `id` LIMIT 1"

ORDER BY `id` LIMIT 1 OFFSET 1 не работает а ORDER BY `id` LIMIT 1 выводит то же самое

siv1987
На сайте с 02.04.2009
Offline
427
#3

WHERE `id` > $id ORDER BY `id` ASC LIMIT 1

bay_ebook
На сайте с 28.05.2010
Offline
111
#4
Vdmoze:
ORDER BY `id` LIMIT 1 выводит то же самое

невнимательно посмотрели, там еще WHERE я другой написал :)

twinlv
На сайте с 11.12.2013
Offline
65
#5

Вообще тогда лимиты ставить надо LIMIT 0,1 , LIMIT 1, 1, LIMIT 2, 1

а может так ?

$query = "SELECT * FROM `photos` WHERE `id` = '$id'"

$sql = mysql_query($query);

$photosid=array();

while ($photos = mysql_fetch_assoc($sql)) {

array_push($photosid, $photos['id']);

}

print_r($photosid);

CloudHosting.lv - полный комплекс услуг на базе собственного ДЦ (г. Рига, Латвия) https://www.cloudhosting.lv (https://www.cloudhosting.lv)
siv1987
На сайте с 02.04.2009
Offline
427
#6

Не надо, если нужна только одна запись. Если нужен интервал - тогда надо ставить оффсет

WHERE `id` >= $id ORDER BY `id` ASC LIMIT 2

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий