|
|
|
Как лучше сделать сортировку?
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Хочу сделать сортировку для таблицы, чтобы при щелчке по названию поля происходил запрос. Пишу скрипт на php и с javascript плохо знаком. Есть идея, на событие OnClick обьявить переменную например х, и перезагрузить страницу. В код вставить проверку на существование переменной, если существует, то выполнить сортировку. Так вот, как добавить новую переменную, так чтобы она была видна в php и перезагрузить страницу? Или, это можно сделать сортировку средствами javascript? З.Ы. Использую бд mysql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2009, 05:48 |
|
||
|
Как лучше сделать сортировку?
|
|||
|---|---|---|---|
|
#18+
Можно взять готовый js-грид с поддержкой сортировки. Поищите, стопицот раз мелькали ссылки. Jah loves you. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2009, 09:25 |
|
||
|
Как лучше сделать сортировку?
|
|||
|---|---|---|---|
|
#18+
Если размер таблицы невелик, то лучше javascript, если большой, то лучше сервером сортировать. Хотя если при получении данных таблицы загонять их в json-объект и таблицу синхронизировать с этим объектом, то никакой сложности в действиях по сортировке нет. Иначе изъятие коллекций строк и ячеек из таблицы и последующая сортировка отнимут слишком много времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2009, 14:15 |
|
||
|
Как лучше сделать сортировку?
|
|||
|---|---|---|---|
|
#18+
Ratty, Если таблица хранится на SQL-сервере, можно сделать, как обычно делают - передавать имя поля (или его номер) на сервер, например так: <a href="...?field=field1&dir=asc...">Поле1</a> На сервере ловить имя поля и строить sql-запрос, причём, если пришло asc - при формировании страницы менять на desc для этого столбца. Так обычно и делают. Только повнимательнее делать, чтобы не было sql-injection. Яваскрипт здесь ни при чём. Тем более, что Вы пишете - перезагрузить страницу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2009, 14:50 |
|
||
|
Как лучше сделать сортировку?
|
|||
|---|---|---|---|
|
#18+
ShSergeRatty, Если таблица хранится на SQL-сервере, можно сделать, как обычно делают - передавать имя поля (или его номер) на сервер, например так: <a href="...?field=field1&dir=asc...">Поле1</a> На сервере ловить имя поля и строить sql-запрос, причём, если пришло asc - при формировании страницы менять на desc для этого столбца. Так обычно и делают. Только повнимательнее делать, чтобы не было sql-injection. Яваскрипт здесь ни при чём. Тем более, что Вы пишете - перезагрузить страницу. Не все так просто... При загрузке страницы, выполняется запрос Select * From MyTable. И конечно же можно передать переменную через адресную строку и после вставлять в запрос. Но у меня так же есть панельки для фильтра/ поиска Select * From MyTable Where Field1 = 'Введенное значение'. Логика такова: если есть параметр для фильтрации то Select * From MyTable Where Field1 = 'Введенное значение', если параметра нет то Select * From MyTable. Как вы понимаете если я перезагружу страницу, то параметра не будет и произойдет выборка всех страниц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2009, 19:41 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=36244650&tid=1454155]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
162ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 458ms |

| 0 / 0 |
