Разбить на страницы с помощью php или js

У меня есть этот php-код, который извлекает изображения из базы данных с использованием идентификатора пользователя, а затем отображает все изображения в виде списка. я пытаюсь разбить изображения на страницы, не более 5 элементов на странице. но код показывает только первую страницу без ссылки на другие страницы. вот мой php-код

<?php
    include 'connect.php';


        $Category = " ";
        $query = "SELECT Img_dir, Caption, Category FROM images WHERE Category = '". $_REQUEST['Category'] ."' AND user_id = '". $_SESSION['user_id'] ."' LIMIT 0,5";


        $result = mysqli_query($conn,$query);


        while ($row=mysqli_fetch_array($result)){
            $image = $row["Img_dir"];
            $Caption= $row["Caption"];
            $Category = $row["Category"];
                echo "<dl>";

                echo "<dd>$Category &nbsp&nbsp <img src='base64_encode($image)' />&nbsp&nbsp $Caption<dd>";

                echo "</dl>";
                }
        //number of total pages available
        $results_per_page = 10;

        $number_of_results = mysqli_num_rows($result);

        echo $number_of_pages = ceil($number_of_results / $results_per_page);
        echo "<br>"; echo "<br>";
        for($r=1;$r<=$number_of_pages;$r++)
        {
            ?><a href = "dashboard.php?page=<?php echo $r;?>" style = "text-decoration:none"><?php echo $r." "; ?></a><?php 
        }

?>

ваш синтаксис повсюду ?><a href = "dashboard.php?page=<?php echo $r;?>" style = "text-decoration:none"><?php echo $r." "; ?></a><?php должен быть echo '<a href = "dashboard.php?page='.$r.'" style = "text-decoration:none">'.$r.'</a>';

user10051234 18.03.2019 22:07

Ваш sql-запрос имеет жестко закодированное ограничение 0,5, что означает, что он всегда возвращает 5 записей. Чтобы разбивка на страницы работала, вам нужно будет снова вызвать свой php-код для каждой страницы. Затем вы напишете запрос, который будет возвращать строки на основе выбранного набора страниц.

Nawed Khan 18.03.2019 22:08

@tim, если вы хотите быть педантичным в этом, это может быть printf('<a href = "dashboard.php?page=%d" style = "text-decoration:none">%d</a>', $r, $r);, но на самом деле ответ - правильный движок шаблонов.

miken32 18.03.2019 22:26

Вам понадобится один дополнительный запрос в дополнение к наблюдению @NawedKhan для вашего лимита. Ваш дополнительный запрос не будет ограничен, потому что он будет использоваться для получения общего количества результатов. Используя один запрос, вы всегда получите общее количество результатов, соответствующее вашему лимиту.

imvain2 18.03.2019 22:56

@NawedKhan, если я удалю LIMIT, он отобразит разбивку на страницы внизу, но не будет соответствовать 10 результатам на странице.

molten-lead 19.03.2019 09:40

Как упомянул @imvain2, это не так просто, как у вас. Вам понадобится как минимум 2 запроса, один для подсчета и один для лимита. Это более вовлечено. Прочтите этот учебник: tutorialspoint.com/php/mysql_paging_php.htm и немного больше изучите разбиение на страницы с помощью php и mysql.

Nawed Khan 19.03.2019 16:58
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
6
47
0

Другие вопросы по теме