![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
baldina, Ну вообрази, что включаемый модуль содержит синтаксически некорректный код. Ну вот случайно по ftp непдокачался код... Сломается ли сайт, если такой модуль попытаться вставить в систему? А вот если все места, в которых упоминается модуль, оклеить "скотчем", то простой посетитель будет иметь работающую версию сайта, не смотря ни на что.
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
whatisnot |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Если для выключения модуля в каждую его составляющие требуются вставки, то это не модуль, а как раз "нечто скленное скотчем".
Это сообщение отредактировал(а) whatisnot - 11.2.2015, 13:59 |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
модуль в отдельном файле? файл подключается только кому надо иметь его функционал? нет проблем, обычный пользователь не заметит. или админ скопировал только часть файлов. или сетевая плата сломалась. имхо, это другие проблемы |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Я тут пример выдавал... Форма поиска. Она должна быть видна на всех, в том числе и на главной, страницах. Она должна быть видна (после отладки и сдачи) для всех, в том числе и незарегистрированных пользователей. Тоесть, на главной у нас нет (в принципе) ни сессии, ни юзера с правами. Без дополнительного механизма его не отладить. Никакими галочками в админке. Механизм - универсльный. Он позволяет "клеить" не только в благоустроенных условиях современных CMS, но и вообще в любых, способных поддерживать (php5.2++)-жизнь ![]() -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
whatisnot |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
>Тоесть, на главной у нас нет (в принципе) ни сессии, ни юзера с правами.
Очень странно. Это по чьим итересно принципам главная обделена сессией? >Без дополнительного механизма его не отладить. Никакими галочками в админке. Это далеко не так. |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
![]() :off захожу в интернет-магазин, без регистрации, а у меня в корзине товар лежит, который я вчера накидал да никто не против вашего механизма, но есть и другие способы, более кошерные. в маленьком проекте, без монстровидных фреймворков, может и хорошо. только проекты имеют обыкновение разрастаться. ваши локальные решения быстро превратят проект в вермишель. а любой даже маленький фреймворк всегда имеет сессию. к тому же сессия это та же кука, поэтому в отношении вашего механизма проблемы те же, что и с сессией. например, вы не можете не обращать внимание на остальной проект: а если часть контента уже отправлена? значит ваша отладка должна стать частью проекта. так что абсолютно не зависеть от основного кода не получится. вернемся к примеру с главной страницей. даже незарегистрированный пользователь в нормальной среде проходит аутентификацию и авторизацию. и у него могут быть личные данные (в сессии) и права. никто не мешает пользователю быть одновременно гостем и тестером
Это сообщение отредактировал(а) baldina - 11.2.2015, 17:26 |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
baldina, Сессия стартует ВСЕГДА при первом же визите юзера на сайт? Всегда и на всех сайтах? И эти люди будут учить меня программировать?
![]() -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
если сессия нужна при первом же визите юзера на сайт, отчего бы ей не стартовать?
если неизвестно, нужна ли сессия, отчего бы ей не стартовать? какие вообще ограничения по старту сессии, и откуда? |
|||
|
||||
whatisnot |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Уже дошло до абсурда. )
Музыкант оперирует 12-ю нотами, это его инструменты, и при этом одни создали бессмертную классику, другие поразительную по чувствам современную музыку. А что есть чувства? Это пропустить через себя виденное, выразив его через музыку. У художника краски, и одними и теми же цветами рождаются разные шедевры, от реализма до абстракционизма. Что они отражают? То же самое, мир нас окружающий взглядом художника. Программирование тоже творчество, в первую очередь, конкретный код, это во вторую очередь. Отличие программиста от музыканта и художника лишь в инструментах, и способе выражения своих чувств. Что музыканту, что художнику, что программисту важно понимать, чувствовать инструменты, без этого не будет ни Лебединого озера, ни улыбки Джоконды, ни Mac OS. Будет нечто серое, посредственное. Я это к тому, что все вами сказанное в качестве «аргументов в пользу за», и просто высказываний, и которые, конечно же, касаются программирования, могу переложить на нечто из мира реального, но описывающее именно вашу ситуацию. Ведь ПО, это тоже нечто из реального мира, например, организовывая диалог с пользователем, вы создадите ровной такой, какой будет базироваться на вашем понимании человека, его психологии. Ну а самым ярким примером жизни описанной программистом можно назвать корзину интернет магазина. Вот уж где часто можно видеть – тот, кто ее написал, либо ни разу не был в реальном магазине, либо не задумывался о назначении ее прототипа – реальной тележки на четырех колесах. Теперь абстрагируемся от классов, сессий и прочего, и обрисуем ситуацию вашу, но иными категориями. >Ну вообрази, что включаемый модуль содержит синтаксически некорректный код. Ну вот случайно по ftp непдокачался код... Я это сравню со следующим: На завод N приходит человек, минуя отдел кадров прямым ходом в цех. Мастер цеха – «ты где шляешься?», подзатыльник, к станку его и дает норму, не интересуясь вопросом, сможет ли вообще он выполнить эту работу. Объяснение этого горе работяги – «извините, но я дома штаны забыл», никого не интересуют. Ситуация на заводе N изменилась в лучшую строну, по мнению руководства. >А вот если все места, в которых упоминается модуль, оклеить "скотчем" Для решения проблемы поступили просто и сердито – к работяге приставил наставника, а чтобы штаны не терял к его штанам приставили смотрителя. Абсурд да? Ну не может быть такого в реальной жизни, ибо и штат завода прописан, и прием на работу согласно законодательства, и есть те, кто за этим следит. Так почему вы свое производство строите на абсурде? Получается, что ваш завод (сайт) имеет штат (скрипты), но управление ими (базовое или файловое управление конфигурацией) либо отсутствует вообще, либо крайне не продумано. Просто в голове не укладывается ваша логика. Про сессию можно и промолчать, это вы скорее не подумаши ляпнули, но вот то, что вы, фактически, пытаетесь следить не только за своими рабочими, но и за их штанами, это поражает. Смысл в чем? Неужели эти две сущности равнозначны и каждая из них есть главная? Нет, не продумано у вас производство, обанкротится, если вы не устраните издержки в нем. Длинный монолог, но как иначе. ) Это сообщение отредактировал(а) whatisnot - 11.2.2015, 20:02 |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
baldina, Каким еще способом, кроме сессии, я могу сказать приложению, что вот этот вот модуль на самом деле включен?
Кстати, для того приложения, в котором мне пришлось делать поиск, сессия стартовала только при заполнении форм обратной связи. Да и там, по сути, была не очень то нужна... А по сути есть что сказать? Резюмирую, для простоты понимания. Я предлагаю использовать отдельный инструмент, который по моим представлениям, позволяет достаточно безопасно для посетителей, заниматься отладкой достаточно сложного дополнительного функционала, прямо на сайте, без его отключения. Безопасность, в этом случае, означает, что посетители всегда имеют рабочую версию сайта. Для использования инструмента нужно придерживатьс несложной дисциплины и следить за правильным синтаксисом в "местах вклейки". whatisnot, и baldina сомневаются в нужности такого механизма и утверждают, что его вполне можно заменить на флаги в сессии (специальные права юзеров - вписываются в это понятие ). -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
baldina |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
оставьте в покое сессию, про нее я всего лишь заметил, что это стандартный, более высокоуровневый механизм, чем raw куки. смысл предложения сводится к тому, чтобы меньше опираться на дисциплину, больше - на структуру проекта, а также меньше выполнять действий при подключении/переключении в продакшн нового функционала. мой пример кратко можно переписать так:
вопрос, как реализовать isTester() и inProduction() - в общем случае флеймовый, т.к. фреймворки обычно содержат подобные средства, а как организован проект на чистом php, и насколько в него можно влезть, знает только автор
вы доделываете чужое? стартуйте сессию сами. если вы можете записать куки, то и сессия стартует. кстати, вы на этом основании насмехались? м-да... хотелось бы услышать и другие доводы против сессий, кроме того, что "так бывает" инструмент ваш, как и любой другой, имеет право на жизнь, но обладает некоторыми недостатками, на которые вам любезно указали. Ну или скажите, что это инструмент для допиливания проектов, сделанных неизвестно кем неизвестно как. Это будет немного иная тема. Например, моментально встанет вопрос о месте включения вашего кода, т.к. априори неизвестно как организован вывод в проекте. |
||||||
|
|||||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Да. Я в нескольких местах это, вроде, уже говорил. Вероятно, недостаточно явно. Область применения - доделка неизвестно кем, неизвестно когда и неизвестно на чем написанных проектов. "Неизвестно" - в рамках моей способности понять код и способности кода работать на php5.2++. С такими условиями, аппеляции к галочкам в админке и правам на модули несколько необоснованы. Что, видимо и вызвало мой нездоровый смех ![]() -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
whatisnot |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Да, работая над каким либо сторонним движком, вы можете быть ограничены рамками, соглашениями и условиями этого движка, приходиться изголяться иногда. Но либо вы запутали всех, либо в пылу дискуссии появилась ветвь случайная, но как бы то ни было, вопросы остаются.
Сказать по сути - а что? Я вам и сказал как раз по сути, ибо случай с FTP, это уму не постижимо так же, как и с абсурдом мной описанным. Это что получается, составляющие вашего модуля грузятся на сервер по собственной инициативе и мало того, еще и не дождавшись загрузки окончательной, самовольно подключаются и начинают работать? Как еще можно понять это вами написанное? Я не понимаю, какова же концепция, иерархия модуля, если для управления им требуются такие неоправданные механизмы - ставить заплатки в различных местах. Не понятно на примерах отвлеченных? Пожалуйста – ваш модуль в контексте некоего механизма вашего, это дерево каталогов, вложения которого нельзя скрыть, скрыв родительский их каталог. Вот ровно так я и понимаю ваш модуль. Это, а не куки, для меня является абсурдом. Есть ведомый первичный скрипт (primary), есть ведомые вторичные скрипты (secondary). Не может secondary существовать без primary, и если у primary режим «показать только мне», то и secondary вижу только я. А так как концепция ваших модулей остается тоже тайной за семью печатями (сути их вы ведь тоже не описываете), то я и делаю вывод - все ваши доводы, что нельзя управлять всеми, выключив только родителя, просто надуманные. Это сообщение отредактировал(а) whatisnot - 12.2.2015, 14:40 |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
whatisnot, Искренне завидую человеку, который не в состоянии понять о чем я говорю. Серьезно
![]() А в моей реальности встречается вот, например, такое: Проект, в которой 2/3 контента выглядят как в меру разумно сверстанный html, в начале которого стоит <? include header.php ?>, а в конце <? include footer.php ?> и хидер и футер - такой же в меру разумно сверстанный html. Остальная треть - какие-то формы, сверстанные с тем же минимализмом. Мне, почему то, кажется, что это не такие уж и редковстречающиеся условия... -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
whatisnot |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Это уже не абсурд, это уже кошмар, ей богу. В чем может ограничение в стандартном - подключение шапки и подвала, а в середине основной контект, чего то там? Чего в этих формах такого, что не позволяет управлять подключением по управляющему им скрипту?
То что вы привели ни как не описывает проблемы, да и если она вообще. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "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. |