Показать полную графическую версию : Сортировка данных
Mancoffee
09-07-2014, 16:48
Есть база данных (MySQL) с такими колонками "`ид`, `имя`, `фамилия`, `отчество`, `дата`, `месяц`, `год`, `коротко`, `полное`"
Есть табличная вёрстка с блочной, в которой отображаются данные из БД. Нужна сортировка всех данных. Как это сделать?
Andrey N.
10-07-2014, 15:28
sql-выборка:
SELECT * FROM table ORDER BY `фамилия`, `имя`
Mancoffee
10-07-2014, 21:38
sql-выборка: »
Это я знаю. Я не знаю как при реализовать.
Это я знаю. Я не знаю как при реализовать. »
Найти, где формируется искомая страница. Найти соответствующий запрос. Откорректировать в потребный вид.
Mancoffee
10-07-2014, 22:25
Найти, где формируется искомая страница. Найти соответствующий запрос. Откорректировать в потребный вид. »
То есть? Я знаю, где она формируется, потому как я пишу сайт. Я не знаю, как реализовать на сайте сортировку (функция, кнопки, какой вид должна принимать ссылка и т.д.)
Я не знаю, как реализовать на сайте сортировку (функция, кнопки, какой вид должна принимать ссылка и т.д.) »
Что именно Вам непонятно? Детали текущей реализации приветствуются (на чём пишете, используете ли Ajax и т.п.).
Mancoffee
11-07-2014, 13:10
Что именно Вам непонятно? »
Пишу на php. Непонятно, как реализовать вышеупомянутую строку из phpMyAdmin. То есть как функцию написать правильно (если нужно), кнопку для сортировки как сделать (то есть вид ссылки какой должен быть) и т.д. Мелочи непонятны. Хотелось бы если не готовый код, то хотя бы, чтобы кто-нибудь описал алгоритм действий.
А причём тут phpMyAdmin?
Примерно так: php sort database table - Поиск в Google (https://www.google.ru/search?q=php+sort+database+table).
Mancoffee
11-07-2014, 17:00
А причём тут phpMyAdmin? »
Не при чём. Строку мне выше дали SQL, вот и вопрос - "Как?"
Mancoffee, все равно не понятно "как - что?"
Вам нужен пример, когда нажав кнопку, будет сформирован SQL запрос, выполнение запроса, а полученный результат будет записан в таблицу?
Mancoffee
11-07-2014, 17:59
lxa85, что непонятного? Есть данные, которые отображаются на сайте из БД, их нужно сортировать. Как это сделать?
а полученный результат будет записан в таблицу »
Зачем мне запись? Мне нужна сортировка. Я сложно выражаюсь?
В код php-модуля, формирующего отображение искомой страницы вносите следующие изменения:
в шапку таблицы добавляете span'ы/div'ы, изображающие стрелки для прямой/обратной сортировки;
к этим html-элементам привязываете javascript-функцию, которая будет выполнять переход на ту же страницу с передачей параметров, указывающих выбранные сортировки (наподобие «http://www.mysite.ru/showtable.php?fio=asc&birthday=desc&cash=asc»);
правите код php-модуля, чтобы он принимал и обрабатывал указанные параметры.
Более сложный, но и более оптимальный вариант — пользовать Ajax, он же XMLHttpRequest. В этом случае в javascript-функции Вы не делаете переход, а запрос к базе и простое перерисовывание содержимого тэга table.
Если таблица невелика, на одной странице, то можно и вовсе обойтись без запросов к базе, просто сортируя строки таблицы на странице той же javascript-функцией.
Так, поправлюсь. Результат записан в таблицу, выводимую на экран.
Зачем мне запись? Мне нужна сортировка. Я сложно выражаюсь? »
Да. Я энный раз перечитываю и все равно не понимаю.
Есть данные, которые отображаются на сайте из БД, их нужно сортировать. »
По шагам.
Есть база данных.
В ней есть таблица с данными.
Есть страница.
На странице есть рабочий механизм, который подключается к базе данных.
Соединение проходит успешно.
Есть запрос, который "вытягивает" из базы данные в НЕ сортированном виде.
Данные успешно отображаются на странице, допустим в виде таблицы, т.к. так проще.
Вопрос.
Что из этой цепочки не ясно и где надо внести поправку?
Вы сейчас, разумеется не со зла, валите термины в одну кучу, поэтому вас пытаются, но не могут понять.
Вы "в теме" свой проблемы, мы - нет. Расскажите "как сказку ребенку".
Я пока попробую накидать пример страницы, чтобы разбираться проще было.
Mancoffee
11-07-2014, 19:14
Что из этой цепочки не ясно и где надо внести поправку? »
Вы правильно понимаете (я когда на форум обращаюсь исхожу, как раз из того, что меня понимают).
Ключевое - Отображаемые на странице данные НУЖНО СОРТИРОВАТЬ после отображения по желанию (к примеру по ID или фамилии или году рождения).
ПС. При выводе на страницу я установил сортировку (ORDER BY) по id, а вот как сделать по желанию нажатием на кнопки (DESC и ASC)?
http://savepic.ru/5255856.png
сли таблица невелика, на одной странице, то можно и вовсе обойтись без запросов к базе, просто сортируя строки таблицы на странице той же javascript-функцией. »
Дело в том, что отображаемые из БД данные включены в div. Насколько я понимаю так не будет работать AJAX. Правильно?
Дело в том, что отображаемые из БД данные включены в div. Насколько я понимаю так не будет работать AJAX. Правильно? »
Неправильно. Вы с ним знакомы, пользовали: XMLHTTPRequest: описание, применение, частые проблемы | XmlHttpRequest.ru (http://xmlhttprequest.ru/)?
Вы странно цитируете. В приведённой Вами цитате речь совершенно не про XmlHttpRequest и запросы к базе данных.
Mancoffee
12-07-2014, 13:56
Iska, благодарю за ссылку. Пользовал, только не сам писал коды, а сейчас нужно побыстрее, поэтому хотелось бы попроще (пускай и не так эффективнее)
привязываете javascript-функцию »
А это обязательно или можно без JS обойтись?
ПС. Просто НУЖНО сделать сайт полностью самописным, а в этом языке я только начинаю разбираться.
А это обязательно или можно без JS обойтись? »
Совсем. я полагаю, не обойтись. Нажатия кнопок/span'ов/div'ов с направлениями сортировки должно же что-то обрабатывать.
а сейчас нужно побыстрее, поэтому хотелось бы попроще (пускай и не так эффективнее) »
Тогда первый вариант без Ajax/XmlHttpRequest, с переходами на ту же страницу php с указанием параметров.
Mancoffee
12-07-2014, 15:32
Нажатия кнопок/span'ов/div'ов »
Ну не знаю, может как-то просто ссылку на кнопку повесить да и всё, как-то так примерно
<a href="users.php?sort=desc">
а там может функцию какую-то написать. Пускай даже примитивно, но главное чтобы работало.
Ну не знаю, может как-то просто ссылку на кнопку повесить да и всё, как-то так примерно »
Именно.
Mancoffee
12-07-2014, 17:40
Именно »
:) Хе, так а зачем для этого JS?
Функция PHP-->Ссылка в HTML с вкраплением PHP-кода (то бишь переменной). Готово. Правильно?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.