![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Teresh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 1.4.2010 Репутация: нет Всего: нет |
Нужно сгенерить HTML-таблицу с 1000-ю строками, в которой цвет фона строк меняется от 000000 до FFFFFF одновременным увеличением всех компонент цвета на один на каждой следующей строке.
|
|||
|
||||
ayax2005 |
|
|||
![]() echo $smile ![]() ![]() Профиль Группа: Участник Сообщений: 516 Регистрация: 17.4.2008 Где: Питер Репутация: 2 Всего: 11 |
Ну а вопрос-то в чём?
-------------------- все вопросы - из-за неверной формулировки задачи |
|||
|
||||
Teresh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 1.4.2010 Репутация: нет Всего: нет |
как это сделать на php?
|
|||
|
||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
цикл на тысячу итераций, вычисляем разницу между двумя крайними цветами, делим на 1000 - получаем шаг. далее остаётся всего лишь на каждой итерации вставлять нужный цвет в <tr><td style="background: #'.$color
|
|||
|
||||
BuShaRt |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1391 Регистрация: 29.6.2006 Репутация: 4 Всего: 6 |
По своему опыту скажу, что такие фокусы лучше оставлять на совесть клиентских скриптов т.к. по идее PHP не должен на прямую управлять HTML выводом. Он должен подсчитать и сформировать данные, остальное - это уже CSS и JS.
|
|||
|
||||
Dima 2015 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 16.3.2008 Где: SPb Репутация: 2 Всего: 2 |
BuShaRt, возражу. Перекрашивать на клиенте 1к строк будет куда сложнее с точки зрения нагрузки на браузер чем сразу вывести нужное.
|
|||
|
||||
BuShaRt |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1391 Регистрация: 29.6.2006 Репутация: 4 Всего: 6 |
Dima 2015,
Я так понимаю о MVC вы не слышали. Если мы говорим о выполнение задачки из сборника "PHP для чайников" (иначе мне не понятно, в каком проекте есть необходимость выводить 1000 строк на одной странице), то конечно о MVC нам знать не надо и совет bars80080 очень актуален, ну а я же просто дополнил ответ, менее полезной в данной ситуации, но более практичной в перспективе информацией. |
|||
|
||||
Dima 2015 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 16.3.2008 Где: SPb Репутация: 2 Всего: 2 |
BuShaRt, ну зачем сразу делать какие-то необоснованные предположения... слышал, и не раз, и даже не два. Но неужели Вы хотите сказать, что парадигма MVC велит выносить всю логику представления и даже верстку на клиент и класть это на плечи бедного js-движка браузера, а от ПХП требуется только json в нужное место вывести и все? Паттерн то не в этом состоит, паттерн состоит в том, чтобы разнести бизнес-логику и логику отображения по разным участкам кода, по разным файлам, классам если хотите. Но это не значит, что Пыху верстку формировать запрещается. Формирует, очень даже... и большинство сайтов работает именно так.
Я так понимаю, Вы клоните в сторону клиентских джаваскриптовых шаблонизаторов. Да, тема есть такая, тема интересная. С теоритической точки зрения даже оправданная, трафика меньше, скорость больше и т.д. Но мне кажется это скорее экспериментальная технология и работает на очень небольшом числе сайтов, чаще все таки РНР формирует целиком хтмл-код, даже аяксовые запросы часто отдают целые готовые хтмл-блоки, которые потом просто вставляются в контейнер через innerHTML. Но это все лирика, и речь то вообще не об этом... при чем тут вообще было MVC? Я говорил про скорость, когда возникают такие нестандартные штуки всегда надо думать как лучше сделать. Так вот я по опыту знаю, когда надо на клиенте ворочить большим числом элементов - браузеру может стать плохо, особенно когда менять что-то надо и браузеру надо перерендерить страницу, а в данном случае это именно так. |
|||
|
||||
BuShaRt |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1391 Регистрация: 29.6.2006 Репутация: 4 Всего: 6 |
Dima 2015,
Значит вы считаете нормальным написать такой код?
|
|||
|
||||
ayax2005 |
|
|||
![]() echo $smile ![]() ![]() Профиль Группа: Участник Сообщений: 516 Регистрация: 17.4.2008 Где: Питер Репутация: 2 Всего: 11 |
научи дурака Богу молиться.....
BuShaRt, ваше предложение использовать паттерн MVC для решения этой конкретной задачи мне кажется в принципе довольно странным. Делаете из мухи слона. -------------------- все вопросы - из-за неверной формулировки задачи |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Teresh, есть несколько принципиальных моментов. Обычно, "1000 строк в таблице" не нужно ни пользователю - он не сможет объять такое количество данных, ни программисту - при этом генерится довольно большая по объему "простыня", которая долго долетает до клиента. Длинная простыня имеет право на существование только при выводе текста на печать или еще в каких экзотических случаях, так что порезать весь вывод на страницы и снабдить сортировкой - будет достойным и разумным украшением странички
![]()
Это как это? в цвете RGB - 3 составляющие цвета и 256 значений "яркости". Откуда берутся 1000 строк? Это что - палитра для выбора цвета? Если действительно - разумнее поискать готовые и удобные палитры в интернете. Это сообщение отредактировал(а) ksnk - 21.2.2011, 20:14 -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
Dima 2015 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 16.3.2008 Где: SPb Репутация: 2 Всего: 2 |
BuShaRt, ну к слову сказать MVC такой код не противоречит никак, особенно если перед ним не идет пачка запросов к БД и после него тоже...
Неграмотное разделение на Html и css - да. Я к своему стыду часто ленюсь и так пишу, но все-таки это всегда происходит в одном месте - в шаблонах (уже очень давно использую Смарти и конечно никаких print там нет). И вообще, повторюсь - причем тут это? Давайте не будем оффтопить, речь о том как таблицу покрасить. Кстати меня тоже заинтересовал вопрос - зачем? И я настаиваю - красить надо Пыхом, джсом это будет убийственно, отображаться будет не сразу и вообще FUU. Ну а стилем тут очевидно никак, т.к. цветов надо шибко много. |
|||
|
||||
BuShaRt |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1391 Регистрация: 29.6.2006 Репутация: 4 Всего: 6 |
Если вы так считаете, то не вижу смысла вести дискуссию.. По теме: Нарисовать таблицу в 1000 строк, в которой каждая нижестоящая строка будет темнее вышестоящей на 1 шаг невозможно т.к. RGB имеет всего 257 (от 0 до 256) шагов. (Автор ясно указал, что все три цвета делают шаг одновременно)
|
||||
|
|||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
BuShaRt |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1391 Регистрация: 29.6.2006 Репутация: 4 Всего: 6 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |