![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Здравствуйте. Сразу прошу прощения если залез ни в ту ветку форума. Вобщем у меня есть очень большая таблица, состоящая из большого кол-ва строк, каждая из которых включает в себя порядка 10 ячеек. Мне нужно вводить значение в эти ячейки, включаа в них input text. Но не будет ли это перегружать страницу? Еще раз повторюсь что таблица очень большая. Знаю что в программировании Desktop приложений - это не допустимо, как дела обстоят в Web-программировании? Спасибо
|
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
для одних 10 строк это много, а для других 10.000 это мало.
о каких размерах идет речь? в любом случае это можно, и лучше посмотреть в сторону AJAX, чтобы результат формировался по мере выполнения Добавлено через 1 минуту и 8 секунд P.S. если информация более-менее статична то можно по крону формировать уже готовый файл с интервалом в N минут и потом его использовать -------------------- Amazing |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
не совсем ясно. перегружать в смысле большого трафика гоняемого туда-сюда или перегружать работу браузера при манипуляциях на странице уже на пользовательском ПК?
|
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
||||
|
||||
| lelik133 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 517 Регистрация: 5.2.2003 Где: Москва Репутация: 5 Всего: 14 |
и где здесь ответ про размер? Это сообщение отредактировал(а) lelik133 - 12.11.2009, 16:14 |
|||
|
||||
| bars80080 |
|
||||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
по факту, таблица сама по себе тормознутая структура. можно заметить, что если назначить ячейкам подсветку при наведении td:hover, то таблица на 200 ячеек (10х20) уже будет тормозить. при дальнейшем увеличении тормоза будут возрастать, вплоть до рывков на скролинге во-вторых, вложенные input'ы. в вэбе стараются лишний раз не перегружать. вешают обработчик, при котором, при нажатии на ячейку появляется поле ввода.
|
||||
|
|||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Я правильно понимаю, что речь идет о таблице такого размера, который велик даже для десктоп приложения?
Тогда меня интересует вопрос юзабилити. предполагается, что пользователь будет видеть всю эту таблицу одновременно и искать нужную строчку? |
|||
|
||||
| yngwie19 |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
у него будет загружаться в браузер вся таблица, ну а визуально будет видеть столько, сколько вместит браузер, ну и вертикальным скролом будет перемещать клиентскую область - стандартные вобщем действия. Что Вы имеете под "искать нужную строчку"? Нужно иметь возможность, чтобы в любую ячейку таблицы он мог ввести какое-нибудь значение.
это очень интересная идея, я уже спрашивал подобный вопрос на форуме, не Вы ли мне на него отвечали? Ну вобщем ради примера вот примерная таблица того что у меня будет, посмотрите если в каждую ячейку буду вставлять input text будет сильно лагать? (файл прикрепил). Присоединённый файл ( Кол-во скачиваний: 6 )
1.h_tml 430,82 Kb |
||||
|
|||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Скажите, вы случайно не слышали о такой вещи, как "база данных"?
Это сообщение отредактировал(а) Ипатьев - 12.11.2009, 21:15 |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Ипатьев, слышал, а в чем дело?
|
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Ну, в частности, работа с базой данных подразумевает, например, что совсем не обязательно показывать все данные одновременно.
Нужную запись можно найти, применяя более интеллектуальные способы, чем прокручивание километровой таблицы колесиком мыши. В крайнем случае, записи можно выводить небольшими порциями. Например, как на этом форуме. Не нагружая ни пользователя, ни его компьютер. |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Ипатьев, Я Вас понял, к сожалению именно такое отображение данных требуется в моем проекте. Скажи по поводу
|
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
||||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
|
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
возьмите да попробуйте
за то время, пока вы ждете божественного откровения на форуме, уже 10 раз можно было сделать ту же таблицу с инпутами и посмотреть, как она будет отображаться. Впрочем, какая разница? Раз требуется - надо делать. |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
||||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
сделать можно. но как вы уже заметили, никто не спешит писать код по простой банальной причине: это нужно не нам, а вам.
работать за других не интересно, помогать можно. вы пишете что-то, что у вас не получается, несёте сюда. вам рассказывают про ошибки но, конечно, по поводу больших таблиц. я, к примеру, ни разу не встречал ситуации, когда вот просто необходимо работать сразу со всей страницей. и в приведённом примере тоже не вижу причины. чем вас не устраивают стандартные формы работы: таблица в БД, просмотр постранично по 10-50 строк, редактирование выбранной записи (записей)? Добавлено через 55 секунд п.с. у вас таблица перегружена лишним объёмом кода вская ерунда типа width='25%' style = text-align:'center' должна быть в стилях. сократили бы килобайт на сто |
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
да нет, дело не в достал
дело в том, что вы собираетесь сделать очевидную глупость, но при этом надуваете щеки на тему "у меня уникальная разработка, нормальные решения мне не подойдут". кроме вас все дураки во всем интернете. Вы первый, кто придумал таблицы редактировать онлайн. вам открытым текстом сказали, что веб еще более чувствителен к объему данных, чем десктоп. под вин32 вся графика лежит в ресурсах, а браузер рендерит ее на лету. под вин32 процедура может спокойно лежать в дллке, пока не понадобится, а в браузере все должно быть прописано заранее не говоря уже об объемах, когда ради одной строчки гонять огромный объем информации. то есть уже давно ясно, что затея дурацкая. а вы, вместо того, чтобы искать нормальное решение, все переспрашиваете. - Командир, я доеду до рынка на этом троллейбусе? - нет - А я? яваскрипт на каждой ячейке убьет браузер еще быстрее. |
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Его не нужно вешать на КАЖДУЮ ячейку. Можно повесить на таблицу. Добавлено через 13 минут и 8 секунд Мда, посмотрел таблицу... Не может она быть нужной именно в таком варианте. Фильтры, поиск и обязательно pagination (постраничный вывод) |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
конечно нет, это просто примерный объем. Ребят ну вот не поверите мне нужно всю таблицу видеть на экране (ну честное слово я не вру, и про БД Я знаю, знаю что нужно делать постраничный вывод). Но мне нужно выйти из конкретной ситуации, ну вот смотрите вы открыли прикрепленный файл нормально? от не "убил" Ваш браузер? Если Вы говорите, что столько инпутов для каждой ячейки недопустимо для браузера, тогда единственным выходом будет подставление при клике в ячейку одного инпута? или все-равно нет? вот что меня сейчас интересует. P.S: И еще вопрос если предлагаете постраничный вывод таблицы, то как быть если ее нужно распечатать целиком? |
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Распечатка данных и управление ими - это разные вещи. Даже в дельфи этим занимаются совсем раздельные компоненты. Никто из грида отчеты не печатает.
Вывести чисто хтмл таблицу на печать - это совсем другое. И то опять начнутся страдания - "ах, как мне колонтитул убрать, ах, как мне на страницы разбить". Но это хотя бы понятно. А стремление делать все в одном окне - это я понять не могу. Вообще, лично я не предлагаю никакой постраничный вывод. Я предлагаю сделать лицо попроще, принять как аксиому, что задача не уникальная, и наверняка где-то решалась, а потом поискать сайт с похожей тематикой и посмотреть, как делают другие люди. Еще можно не разыгрывать агента национальной безопасности, а скопировать сюда ТЗ или хотя бы внятное описание, без "такая задача" и "мне нужно". Вполне возможно, что среди посетителей сайта найдутся те, кто такое делал. |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Вот смотрите файлик, точно такая же таблица должна отображаться у пользователья в браузере, это список материалов со склада. При этом как Я уже говорил необходимо дать пользователю возможность редактировать каждую ячейку.
P.S: Прошу прощения если у вас в первом столбце каракули, это OpenOffice чудит, вообщем там наименования складских материалов. Присоединённый файл ( Кол-во скачиваний: 6 )
1.rtf 208,92 Kb |
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
в rtf файле, насколько я знаю, форму сделать нельзя
и яваскрипт тоже |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Ипатьев, да нет мне не в rtf файле это нужно сделать. Вы просили показать пример того что должно получиться - Я Вам показвваю. Это пример таблицы, которая будет на моем сайте (не в rtf а с помощть <table></table>). Она большая но ее нужно видеть сразу + редактировать поля. Все больше мне от нее ничего не нужно, вопрос в том как мне сделать реализацию того чтобы можно было редактировать каждое поле (на сайте).
|
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
здесь всего 90 строк, а не 3 000, как в предыдущей.
если речь о такой форме, то она будет медленно, но работать |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Ипатьев, ясно, ну а все-таки скажите как лучше сделать один input text или на каждую ячейку?
|
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
что значит "один input text"?
такого здесь не предлагали. имеется в виду яваскрипт? зависит от задачи. я думаю, за те сутки, которые тут прошли уже в решении этого вопроса, можно было бы уже попробовать оба варианта и составить собственное мнение. конкретный ответ вряд ли кто-то даст. потому что никто не делал форму на 3 тыщи строк |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Ипатьев, Спасибо Вам большое за помощь и терпение !
|
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Человек не в состоянии воспринимать такое количество инфорации одновременно. Поэтому тебе достаточно видеть ее по частям. http://simpliest.co.cc/index.php/report/list Редактировать можно на отдельной странице. Для небольших частей можно сделать редактириовать прямо в ячейках. А как происходит печать в Word/Excel? Это отдельная функция, которая может работать независимо. |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Simpliest, Спасибо Вам большое за пример, Я объясню почему мне это не подходит. Во-первых сам этот пример выглядит как стандартная таблица базы данных, а у меня она должна быть похожей на отчетную ведомость типа 1С, далее под тем что Я имел в виду:
Вам ответ
Но гораздо быстрее крутануть колесо мыши и через долю секунды увидеть следующую часть таблицы, чем как в этом примере нужно ждать как минимум 2 секунды. В работе с базой данных как в примере это может быть удобно, но в моем случае нужно сделать именно так как Я описал. |
|||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
Так в чем проблема? Сделайте таблицу похожей на отчетную ведомость. http://www.extjs.com/deploy/dev/examples/g...row-editor.html http://www.extjs.com/deploy/dev/examples/grid/buffer.html http://www.extjs.com/deploy/dev/examples/grid/edit-grid.html |
|||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
sTa1kEr, это не очень похоже на тот формат, который Я прикрепил в файле. Все равно спасибо за пример. Этот контрол похож на DataGrid а мне не нужен DataGrid, мне нужна простая html таблица сделанная с помощью тега <table>, в ней не должно быть ни скролов, ни этой дата-гридовской шапки, а просто html таблица.
P.S: вспоминается легендарный фильм с Ю.В.Никулиным "......будем искать!" |
|||
|
||||
| Simpliest |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Кто мешает оформить так, как надо? Это не мои слова, это ваша цитата... Оформляйте сообщение правильно
Пример что я дал работает на бесплатном и очень небыстром хостинге с 24Мб памяти под PHP И там не надо ждать 2с (если конечно у вас не модем). Это во-первых. А во-вторых, для таблиц до 100 строк можно применять такие вещи Добавлено @ 23:57 Надо не искать, а делать. А вам похоже тупо - лень. Это сообщение отредактировал(а) Simpliest - 13.11.2009, 23:58 |
||||
|
|||||
| sTa1kEr |
|
||||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
Вас интересовала производительность? Во втором примере 59349 строк.
http://www.google.ru/#hl=ru&newwindow=...1a4a0739a55713e |
||||
|
|||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Всем спасибо.
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |