Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: оптимизация dom

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
SAD
Отправлено: 20 Ноября, 2010 - 12:51:04
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Есть очень большая проблема при построении больших по размерам таблиц в которых более 10k строк и 8-10 столбцов.
Идет запрос с помощью json, вытягиваются записи и в цикле for (i = 0; .....) идет запись в переменную(построение первой строки таблицы) - конкатанация следующей строки и т.д., потом после окончания цикла идет вставка в таблицу. уходит многовато времени для построения таблицы. есть ли способ оптимизации построения?

(Отредактировано автором: 20 Ноября, 2010 - 13:04:16)

 
 Top
Slavenin
Отправлено: 20 Ноября, 2010 - 15:54:07
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




прежде всего оптимизировать sql запрос и убрать из него все лишнее. Попробовать например проделывать это на стороне сервера средствами php, или же вытаскивать не все записи одновременно а первые n строк, а снизу выводить ссылки на следующие страницы, аналогично как сделаны страницы на форумах.

(Отредактировано автором: 20 Ноября, 2010 - 15:55:25)

 
 Top
SAD
Отправлено: 20 Ноября, 2010 - 15:58:45
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




выбирается только нужное. на стороне сервера не может быть и речи. вытаскивать нужно все записи сразу
 
 Top
Slavenin
Отправлено: 20 Ноября, 2010 - 17:15:11
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




а немного поконкретней задачу тогда можно сформулировать? почему нельзя использовать php? и для чего на странице нужно такое количество строк. Попробуй использовать ajax, по крайней мере субъективное время ожидания сократится так как будет видна динамика построения страницы.
 
 Top
SAD
Отправлено: 20 Ноября, 2010 - 18:02:27
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




будет производиться работа со строками, конкретней сказать с данными. потому что пишется интерфейс, а не сайт. нельзя на стороне сервера, потому что нежелательно, только прием и отдача данных.
 
 Top
JustUserR
Отправлено: 20 Ноября, 2010 - 18:58:28
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




SAD пишет:
Есть очень большая проблема при построении больших по размерам таблиц в которых более 10k строк и 8-10 столбцов
Для обеспечения оптимизации системы доступа к компонентам страницы возможно использование встроенных функций DOM-модели для контроля минимальных элементов в задаваемом контейнере - дело в том что такой подход обеспечивает моификацию структуры общего элемента без проведения анализа корректности представляющего его HTML-кода и выполненя привеения во внутренней представление


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Champion Супермодератор
Отправлено: 20 Ноября, 2010 - 20:02:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Вообще это большой объем данных, так что быстрого отображения в любом случае не получится.
Если данные выводятся именно так
SAD пишет:
после окончания цикла идет вставка в таблицу
, а не происходит изменение содержимого отображаемой таблицы после каждой итерации, то тервый вариант как раз предпочтительнее. Манипуляции с домом - формирование всей таблицы именно не текстом, а именно как объекта с пом. createElement и appendChild - сомневаюсь, что помогут. Можно конечно поэксперементировать, но толку мало будет.

Может быть переосмыслить идею отправления такого большого объема данных? Может быть реализовать вариант с их порционной подгрузкой?
 
 Top
SAD
Отправлено: 20 Ноября, 2010 - 20:32:34
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Champion пишет:
Может быть переосмыслить идею отправления такого большого объема данных? Может быть реализовать вариант с их порционной подгрузкой?

К сожалению порции не нужны. В чем прикол, интерфейс пишется только под FF,но он просто не может вынести такую нагрузку. Пробовал в Chrome - он пошустрее в этом деле))
Видимо надо совещаться с начальством по поводу пересмотра вывода.
 
 Top
JustUserR
Отправлено: 21 Ноября, 2010 - 21:10:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




SAD пишет:
В чем прикол, интерфейс пишется только под FF,но он просто не может вынести такую нагрузк
Оптимальным вариантом средства исполнения интерфейса требуеющего значительных вычислительных мощностей для отображения таблиц с информационными полями - является использование браузера Internet explorer позволяющего обеспечивать непосредственную работу с представление данных в dataset-элементах


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
SAD
Отправлено: 21 Ноября, 2010 - 21:15:56
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




JustUserR пишет:
является использование браузера Internet explorer

нет, нет и еще раз нет))
все пишется только под FF. Используется очень много плагинов под jquery, которые работает корректно только в нем. Проблему нужно решить под FF
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB