Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129

Постраничный вывод

12.04.2015, 17:24. Показов 900. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток, на сайте есть вывод пользователей, хочу реализовать постраничный вывод.
Так вывожу пользователей , когда выбираю сортировку по имени
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
            <?php
                if(isset($_GET['sort_by_username'])) {
                    $query = mysql_query("SELECT * FROM users WHERE active = 1 ORDER by username");
                    $user_data = mysql_fetch_array($query);
                        do{?>
                                <div class="users-list">
                                    <img src="<?php echo $user_data['profile']; ?>" class='round' height='50px' alt="<?php echo $user_data['profile'];?>'s profile">
                                        <li>
                                            <a href="/user/<?php echo $user_data['username']; ?>"><?php echo $user_data['username']; ?>'s profile</a>
                                        </li>
                                </div>
                        <?php }
                        while ($user_data = mysql_fetch_array($query)); }
Также есть вывод статей на главной, но проблема в том, что и там , и там $_GET присвоено лишь одно значение, не подскажите, как объединить два фрагмента?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
                    $num = 3;
                    $page = $_GET['page'];
                    $result = mysql_query("SELECT COUNT(*) FROM data");
                    $temp = mysql_fetch_array($result);
                    $posts = $temp[0];
                    $total = (($posts - 1) / $num) + 1;
                    $total =  intval($total);
                    $page = intval($page);
                    if(empty($page) or $page < 0) $page = 1;
                    if($page > $total) $page = $total;
                    $start = $page * $num - $num;
                    $query = mysql_query("SELECT data.*, AVG(votes.rating) AS rating FROM data LEFT JOIN votes ON data.id = votes.post GROUP BY data.id ORDER BY data.id DESC LIMIT $start, $num");
                    $data = mysql_fetch_array($query);
                    do{
                                            echo $data["date"];
                        }
                        while ($data = mysql_fetch_array($query));
                ?>
Заранее спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.04.2015, 17:24
Ответы с готовыми решениями:

Постраничный вывод
Помогите отредактировать скрипт постраничного вывода: function link_bar($page, $count,$perpage,$show_link) { $p_c = ceil($count...

Постраничный вывод из бд
Всем доброго времени суток очередной раз нкждаюсь в вашей помощи есть скрипт вывода данных из бд как организовать постраничный вывод по...

Постраничный вывод
Есть скрипт &lt;? include(&quot;config.php&quot;); $content = ' &lt;html&gt; &lt;head&gt;

10
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
14.04.2015, 20:59  [ТС]
хорошо, тогда можно ли как-то объединить значения для переменно GET ? Скажем так:
PHP
1
if(isset($_GET['sort_by_username&page'])) {
что-то такое можно сделать?
0
Заблокирован
15.04.2015, 14:16
Я тоже обычно использую максимум один параметр. Варианта два:
- либо передать один из параметров в пути (например, /users/sort-by-name или /users-sort-buy-name),
- либо закодировать оба параметра в одном (делала когда-то такое, причем там тоже был тип сортировки и номер страницы).

Иногда бывает разумно передавать дополнительные параметры методом POST или в куках.
0
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
15.04.2015, 21:40  [ТС]
хорошо, тогда как Вы предлагаете формировать запросы? Хочу реализовать тогда что-то такое users/sort_by_id/page/1/ .
0
Заблокирован
15.04.2015, 21:59
В смысле? Определяйте из пути поле, по которому сортируете, и вперед: 'ORDER BY `'.$field.'` LIMIT '.(($pn-1)*$pp).','.$pp
0
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
15.04.2015, 22:03  [ТС]
Ну хотя понимаю, а как вы прделагает формировать ссылку, дабы была постраничная сортировка
0
Заблокирован
15.04.2015, 22:16
Ну, если достаточно только сортировки по возрастанию, просто добавляйте к ссылкам для сортировки по каждому полю текущий номер страницы, например: '/users/sort-by-name?page='.$pn
0
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
16.04.2015, 20:01  [ТС]
Цитата Сообщение от Июнь Посмотреть сообщение
например: '/users/sort-by-name?page='.$pn
хорошо, тогда не подскажите как тогда в апачи создать такой тип ссылок? Так как с его cинтаксисом у меня небольшие проблемы
0
Заблокирован
16.04.2015, 21:29
Апач-то тут причем? У вас в сайте используется одна точка входа или несколько? Если несколько, то для каждой точки входа обычно пишут отдельное правило (хотя часто можно и обобщить) примерно такого вида:
Code
1
RewriteRule ^users/ /users.php [NC,L]
0
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
17.04.2015, 10:05  [ТС]
Цитата Сообщение от Июнь Посмотреть сообщение
RewriteRule ^users/ /users.php [NC,L]
окей, но тогда как мне формировать сcылки? Сама сортировка по id или username выглядит так: users?sort_by_id и users?sort_by_username . нужно сделать что-то такое, users/sort_by_id/page/7/ ваш вариант для .htaccess что-то не работает. Подскажеите, что не так, можeт чего не понимаю?
0
Заблокирован
18.04.2015, 03:04
Мой вариант работает, но это был лишь пример. Как формировать ссылки, я вам уже показывала: '/users/sort-by-name?page='.$pn или со слешем на конце '/users/sort-by-name/?page='.$pn ($pn содержит текущее значение параметра page). В обработчике users.php соответственно вычленяете из пути элемент sort-by-name и по этому ключу определяете имя поля для сортировки. Номер страницы можно взять из $_GET['page'].
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.04.2015, 03:04
Помогаю со студенческими работами здесь

Постраничный вывод
Всем доброго времени суток! Нашёл в инете исходник постраничной навигации с отличным функционалом, пытаюсь адаптировать под свой сайт. ...

постраничный вывод
привет, никак не пойму в чем ошибка кода, который осуществляет вывод данных из бд фиксированным числом! при нажатии на &quot;далее&quot;...

Постраничный вывод......
Ребят, ни как не получается с постраничным выводом, то-есть он работает, но на страницу выводятся, все номера страниц какие есть. А как...

постраничный вывод php
я только учу php так что не судите строго:) есть класс который отвечает за выборку из mysql. вот часть кода public function...

Постраничный вывод с комментариями
Здравствуйте. Решил создать на своем сайте страницу, которая бы постранично выводила записи из базы данных. К этой же странице я решил...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru