У меня в запросе неправильный синтаксис, где я пытаюсь создать «prev_id», чтобы получить ссылку на результат $row. есть идеи, как лучше это сделать?
редактирование: ошибка: «Проверьте руководство, соответствующее версии вашего сервера MySQL, на предмет правильного синтаксиса для использования рядом с «prev_id».
function traversePhoto($the_selected_id) {
global $pdo;
$id = $the_selected_id;
$stmt_a = $pdo->prepare("
(SELECT * FROM images WHERE id < '.intval($id).' ORDER BY id DESC LIMIT 1)
UNION (SELECT * FROM images WHERE id = (SELECT MAX(id) FROM images)) LIMIT 1 prev_id");
$stmt_b = $pdo->prepare("
(SELECT * FROM images WHERE id > '.intval($id).' ORDER BY id ASC LIMIT 1)
UNION (SELECT * FROM images WHERE id = (SELECT MIN(id) FROM images)) LIMIT 1 next_id");
// $vars = array(':id' => $id);
$prev = $stmt_a->execute();
$next = $stmt_b->execute();
if ($prev) {
while($row = $stmt_a->fetchObject()) {
echo 'Previous';
}
} else {
echo 'no previous';
}
if ($next) {
while($row = $stmt_b->fetchObject()) {
echo 'Next';
}
} else {
echo 'no next';
}
У меня в запросе неправильный синтаксис, где я пытаюсь создать «prev_id», чтобы получить ссылку на результат $row. есть идеи, как лучше это сделать?
редактирование: ошибка: «Проверьте руководство, соответствующее версии вашего сервера MySQL, на предмет правильного синтаксиса для использования рядом с «prev_id».
[code]function traversePhoto($the_selected_id) { global $pdo;
$id = $the_selected_id;
$stmt_a = $pdo->prepare(" (SELECT * FROM images WHERE id < '.intval($id).' ORDER BY id DESC LIMIT 1) UNION (SELECT * FROM images WHERE id = (SELECT MAX(id) FROM images)) LIMIT 1 prev_id"); $stmt_b = $pdo->prepare(" (SELECT * FROM images WHERE id > '.intval($id).' ORDER BY id ASC LIMIT 1) UNION (SELECT * FROM images WHERE id = (SELECT MIN(id) FROM images)) LIMIT 1 next_id");