Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Ребят, всем привет! Написал сам небольшой скрипт вывода данных из таблицы mysql на страницу. Он сам использует заголовки таблицы мускула в качестве заголовков таблицы html. Пользователю просто нужно написать запрос скульный, остальные столбцы и заголовки и данные выведутся сами. Все работает как надо, просто прошу глянуть, как можно еще упростить выражение. Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2013, 00:03 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Конечный цикл можно чуть проще Код: php 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2013, 09:21 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Первый цикл тоже можно заменить на while, тогда не надо будет предварительно считать сколько там столбцов в запросе :) Код: php 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2013, 11:24 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
anvano,Ренат, спасибо большое за советы!! Сейчас подточу в соответствие с вашими рекомендациями! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2013, 13:43 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Сергей Лалов, Если честно я бы вобще упростил до минимума: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2013, 18:17 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Ренат, спасибо! Ход мысли и логику осилил, да, это вообще здорово так обертывать переменные. У меня есть два вопроса, если не сложно прошу ответить: 1) $headerShowed = false - это какая то константа? Что то не смог раскопать описание в PHP. 2) array_keys($result) as $field) или foreach ($result as $value) - нубский вопрос, а зачем и так переменные объявлять еще раз переменными? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 11:30 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Но очень много echo режет глаз и места занимает... потому я бы так сделал: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Но второй вариант не читаемый почти если нету подсветки html (но становится удобнее если таковая есть), потому как Вам удобнее... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 12:13 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Програмёр, и вам спасибо огромное! Какая однако полезная функция склейки implode)) И не надо циклом прогонять. А нет шанса наколоться с ней с порядком наименований столбцов в шапке и порядком данных в tbody. То есть нет ли вероятности, что имена столбцов таблицы будут одни,а данные в tbody смешаются и попадут другие,из другого столбца? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 13:24 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Сергей ЛаловРенат, спасибо! Ход мысли и логику осилил, да, это вообще здорово так обертывать переменные. У меня есть два вопроса, если не сложно прошу ответить: 1) $headerShowed = false - это какая то константа? Что то не смог раскопать описание в PHP. 2) array_keys($result) as $field) или foreach ($result as $value) - нубский вопрос, а зачем и так переменные объявлять еще раз переменными? 1. Почему константа? Это точно такая же переменная. Которую Ренат ввёл, что бы заголовки вывелись единожды. Единственное, если я не ошибаюсь он немного ошибся, я это исправил в своём варианте, который писал как небольшую доработку (переработку) его варианта. 2. Потому как конструкция такая... Берётся каждое значение массива $result и присваивается переменной $value. Это для простоты, что бы не следить за индексами, когда они например совсем не нужны. Вообщем просто надо знать, что есть такая конструкция в php... А по-ходу поймёте, что без неё если можно обойтись, то очень геморно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 13:29 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Програмёр, прально для единожды вывода шапки, и я там ошибся) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 14:16 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
ребят, спасибо! Благодаря данному топику узнал три разных способа генерации содержимого:) Хочу уточниться по логике обработки переменной if (!$headerShowed): или if ($headerShowed)==false это в принципе одно и тоже? То есть у вас как бы идет от отрицания условие. Это просто кто как привык писать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 15:19 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Сергей Лаловребят, спасибо! Благодаря данному топику узнал три разных способа генерации содержимого:) Хочу уточниться по логике обработки переменной if (!$headerShowed): или if ($headerShowed)==false это в принципе одно и тоже? То есть у вас как бы идет от отрицания условие. Это просто кто как привык писать? Да, только ==false перед скобкой а не после... иначе пхп ругнётся.. почему именно отрицание условия, потому как по логике можно было бы создать переменную $notHeaderShowed, которая была бы true до показа шапки и false после показа... тогда условие было бы if($notHeaderShowed), видите, тоже отрицание (только не на уровне языка, а на уровне осознания логики)? Но логика получается перевёрнута, так как флаг изначально должен быть выставлен в true... А если Вы пишите проект и машинально забыли инициализировать переменную присвоив ей true до нужного участка кода? тогда логика сломается... а если принимать изначальное значение флага как false и выставлять true только при определённом условии, то такой ошибки не будет, так как неинициализированная переменная в пхп эквивалентна false. Вообщем так просто легче и надёжнее в языке с динамической типизацией... В языках с жёсткой типизацией это не актуально, так как Вы обязаны инициализировать переменную до её первого упоминания в коде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2013, 15:48 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Спасибо всем! Данный топик был создан с целью задать вопросы по уменьшению и оптимизации кода генерации таблицы. очень помогли. Реальной целью на горизонте является создание полноценного грида ,как в эксель/аксесс к примеру, с полным фаршем по навигации,сортировкой,перестановкой столбцов,строк ,фильтров,выделений . Хочу уточнить, можно ли отойти от обычного представления таблицы и лепить ее к примеру DIVами, обкусывая строки и перенося вниз по длине полей к примеру. Мне кажется что попроще будет работать с такой таблицей в Jquery UI с фишками такими как draggable,droppable,sortable и так далее. Хочу сделать полноценный грид с максимально расширенным количеством функций (на Сенче, JQgrid и прочих сайтах все не то, в раздельности функции все есть, а вот чтобы в один грид собрать и sortable, и draggable и заполнение массовое как в экселе -нет нигде, по частям продаются капиталисты))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2013, 12:12 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
вы phpmyadmin в смысле изобретаете? и как будете d&d делать? Менять id у записей чтоли?) или у вас не универсальный, чисто под ващши таблицы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2013, 12:29 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Ренат, нет) Пхпмайадмин не изобретаю) Мне нужен хороший Grid для базостроения. Универсальный. Чтобы можно было не парясь использовать. Мучительно перехожу с десктопа на WEB , очень удивился что тут нет таблиц с нормальной навигацией. Под нормальной навигацией подразумеваю нечто такое , как таблицы в аксессе (просто приложил в письме,можете посмотреть что я подразумеваю под нормальным гридом. Аксесовский файл в старом формате mdb. Если у вас в офисном наборе есть аксесс ,то гляньте) Там можно и изменять ширину,и перетаскивать (несколько столбцов, как угодно),и фильтры классные итд итп. Вот такую штуку я хочу повторить и в WEB. Собственными силами) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2013, 12:51 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Сергей ЛаловРенат, нет) Пхпмайадмин не изобретаю) Мне нужен хороший Grid для базостроения. Универсальный. Чтобы можно было не парясь использовать. Мучительно перехожу с десктопа на WEB , очень удивился что тут нет таблиц с нормальной навигацией. Под нормальной навигацией подразумеваю нечто такое , как таблицы в аксессе (просто приложил в письме,можете посмотреть что я подразумеваю под нормальным гридом. Аксесовский файл в старом формате mdb. Если у вас в офисном наборе есть аксесс ,то гляньте) Там можно и изменять ширину,и перетаскивать (несколько столбцов, как угодно),и фильтры классные итд итп. Вот такую штуку я хочу повторить и в WEB. Собственными силами) access'а нету... у меня linux. Фильтры обычно делаются через view'сы. Только вот phpmyadmin их создавать вроде не умеет (визуально имеется ввиду... запросами вручную можно всё), но есть проги, в которых это делается очень просто (хотя обычно phpmyadmin юзаю). А что именно надо? пример можете показать (вернее показать не получится... рассказать)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2013, 20:30 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Програмёр, Да, конечно, пример показать могу (Картинку приложил). Вот к примеру скрин нормальной рабочей таблицы десктопного приложения (в.ч Ms Access). Он (грид/таблица/представление) очень интерактивен и: 1) Классные фильтры расширенные пользовательские. Указал стрелочкой. 2) Все столбцы в данном гриде можно растягивать, скрывать,перетаскивать,закреплять при помощи мышки. Причем как один,так и несколько. 3) Не надо отдельно по каждой записи делать заведение. Просто стрелочками перемещаетесь как в экселе и проставляете нужные значения в нужные строки/ячейки. В общем такая суперюзабельная штука, которая в одной таблице позволяет делать все. В сети много примеров готовых. В частности JqGrid Можете посмотреть здесь: http://www.trirand.com/blog/jqgrid/jqgrid.html или здесь: http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/build/KitchenSink/ext-theme-neptune/#locking-grid Там очень крутые примеры готовых плагинов для создания интерактивных редактируемых таблиц html. Очень большой список возможностей и кузявностей с примочками. НО! Нигде не реализовано даже самое простейшее свойство перемещение между ячейками при помощи стрелочек)) Фильтры уродливые итд итп. Чего я хочу- я хочу написать нормальный плагин табличный сам, и уже потихоньку ковыряю. В качестве движка и генератора тегов естественно будет PHP. В качестве интерактивности будет использоваться JQuery. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 11:40 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Сергей ЛаловНО! Нигде не реализовано даже самое простейшее свойство перемещение между ячейками при помощи стрелочек)) Фильтры уродливые итд итп. Вы по foreign keys говарите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 12:39 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Ренат, а причем здесь foreign keys?) Имею в виду стрелочки вверх,вниз,влево,вправо. Нажал к примеру вниз- курсор перешел на ячейку ниже, нажал на стрелку на клавиатуре влево-курсор переместился на ячейку левее. Я это уже реализовал (простенький образец приложил. Просто наведите курсор и щелкните на ячейку, а потом клавишами клавы вверх,вниз,влево вправо погоняйте курсор как в обычном экселе). И это только 1 процент, от того что нужно сделать)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 13:17 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
В ХРОМ запускайте только. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 13:32 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Сергей Лалов я конечно всё понимаю... только начал изучать веб - руки горят, голова кипит... НО! может взять для разработки\изучения что-нибудь попроще (для своего уровня)?! Имею в виду стрелочки вверх,вниз,влево,вправо. Нажал к примеру вниз- курсор перешел на ячейку ниже, нажал на стрелку на клавиатуре влево-курсор переместился на ячейку левее. Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. там же тоже не дураки сидят... если чего-то не делают, то в силу каких-то причин ИМХО! ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 16:20 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
горячая голова, Ну как в силу каких причин, каждый отдельный грид со своей фишкой можно отдельно и продать)) Какие тут вопросы могут быть. Уровень подтягиваю постоянно. Самое главное чтобы желание не пропало) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 16:47 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
Кстати в первоначальном варианте код JS тоже достаточно неплохо читается. C event работы поболее, но во всяком случае разобраться можно. Мне данный пример на javascript.ru подсказали. Вот, собираю постепенно мозаику из кусочков) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 16:51 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
авторКстати в первоначальном варианте код JS тоже достаточно неплохо читается. C event работы поболее, но во всяком случае разобраться можно. Мне данный пример на javascript.ru подсказали. Вот, собираю постепенно мозаику из кусочков) читается кем? тобою разобрать что? говнокод работает где? только в хроме and etc ;))) почувствуй разницу между "данный пример на javascript.ru подсказали. собираю постепенно мозаику из кусочков " v\s пишу программный код ! авторкаждый отдельный грид со своей фишкой можно отдельно и продать)) Какие тут вопросы могут быть. (facepalm) вопрос один - может книги почитать?! ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 17:06 |
|
||
|
небольшой вопрос по краткости-сестре таланта)
|
|||
|---|---|---|---|
|
#18+
горячая голова, Ты сходи на javascript.ru и скажи модеру что он написал говнокод, просто он склепал решение в чистом JS,причем как понимаю за несколько минут и на коленке. Можешь с ним померятся письками. Я пас. Согласен, с JQUERY он смотрится покороче и попонятней, мне то уж точно) Мне кажется ты неправильно понял- я не хочу продавать гриды по кусочкам, это на Сенче и прочих сайтах хотят)) Расслабся, сегодня пятница! Спасибо за пример с Jquery, буду изучать!) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2013, 18:00 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38375609&tid=1463452]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
| others: | 269ms |
| total: | 434ms |

| 0 / 0 |
