Я пытаюсь сделать альбом со следующим/предыдущим изображением. Первое изображение (инструкция else) показывает, но URL-адрес изображения не переключается, когда я нажимаю next/last. Как я могу это решить?
$next= $_POST['next'];
$last= $_POST['last'];
if($last== "last" ){
$result=mysqli_query($con, "SELECT * FROM album WHERE user_id='$id' AND (time_added>'$time') ORDER BY time_added DESC LIMIT 1");
$row=mysqli_fetch_array($result);
$time = $row['time_added']; //Y-m-d H:i:s
$url = $row['img_url'];
}
else if($next== "next"){
$result=mysqli_query($con, "SELECT * FROM album WHERE user_id='$id' ORDER BY time_added DESC AND (time_added<'$time') LIMIT 1");
$row=mysqli_fetch_array($result);
$time = $row['time_added'];
$url = $row['img_url'];
}
else{
$result=mysqli_query($con, "SELECT * FROM album WHERE user_id='$id' ORDER BY time_added DESC LIMIT 1");
$row=mysqli_fetch_array($result);
$url = $row['img_url'];
$time = $row['time_added'];
}
Похоже, вы боретесь с более чем своим кодом, так что здесь мой подробный ответ.
У вас есть изображение с URL-адресом, например this /pictures/view/$id
при загрузке этого изображения. Вам нужно будет запустить оба запроса, чтобы получить "Next", "Предыдущие" фотографии и передать их значения в представление, например: $data['Next'] = $this->pictures_model->get_next($id);
Теперь, на ваш взгляд, когда вы показываете картинку, вы пойдете вперед и добавите что-то вроде этого
<?php if ( ! empty($Next) ) echo anchor("pictures/view/{$Next->id}", "Next");?>
Это не требует использования метода POST и не требует дополнительных усилий, поскольку вы используете тот же механизм, который использовался для отображения текущего изображения для отображения следующего или предыдущего.
Что касается ваших запросов; вам нужно будет добавить заказ, чтобы получить самое близкое изображение с current image date > date < current image date
, следующей для следующей и другой для предыдущего... эти значения не всегда доступны (когда вы находитесь на первом изображении там, где нет предыдущего, и когда вы находитесь на последнем изображении, нет следующего, и если у пользователя будет только 1 фотография, то оба будут пустыми).