Группы нужны там, где возможны действительно сложные комбинации прав. Скажем Есть админ могущий всё и есть 2 типа модераторов - они могут делать одну часть админского функционала, другие могут делать другую часть функционала. А юзерам доступен функционал, который не доступен ни кому больше. При этом индивидуальные личности могут иметь специфические права. Как правило - корпоративные системы и всякие системы управления. Очень большие форумы, где много разделов и в каждом разделе свои модеры и админы с разной степенью контроля. А если у вас там юзер, модер и админ - сделайте 3 константы, добавте поле user_level в базу и проверяйте в нужных местах их. Вот и всё.
Psih а кто сказал что обсуждается проект домашней страницы? плюс почему бы не посмотреть в будущее, когда может и придется делать много групп, но если не задуматься об этом заранее, код придется очень сильно взд... править то есть)
SeregA Излишняя сложность изначально может только всё усложнить в будущем ещё больше. Been there, done that. It SUCKS. KISS.
Psih Блин, ну делай так как тебе хочется! Но это не усложняет ни капли. Проверка прав у меня занимает намного меньше и все намнооого проще, гибче и удобнее: PHP: if (UserIsAllow(54)) // проверка, есть ли право на действие с айди 54 - в моем случае, удаление комментов с фоток { // ок, можно это делать } else { //нее, них, нельзя }
SeregA Обычно в таких случаях права называют как-нить типа: Код (Text): gallery.comments.delete Человек, который не знаком с системой, но будет доделывать или обновлять её проклянёт тебя. Что будет, когда прав будет штук так 300? Я добавляю новую функцию, на неё действует какое-то уже из существующих прав. - "блин, опять лезть в админку и искать нужное право и смотреть какой у него ID. Проектировщик - ублюдок!!! Пойду хряпну чаю...". Гарантирую вам такие мысли любого достаточно опытного программиста. Да и многих неопытных тоже после добавления 8-10 функций связанными с уже существующими правами.
Psih а мою систему никто трогать не будет. я сам ее знаю и для себя делаю. если тебе она нужна для оптовых продаж - господи, да измени формат поля id с integer на текст и пиши что хочешь)
SeregA Собственные наработки как правило потом идут в дело. И кому то потом придётся с этим работать. Мой фреймворк уже успел засветится у третих лиц, которым лично я проект не делал, но человек, которому досталось на доработку эта система мне спасибо сказал (я с ним знаком, так что он мою разработку узнал и удивил меня тем, что система используется кем-то ещё).
SeregA, подход у тебя неправильный, Psih тебе про это говорит, а не про то, что ему неудобно читать твой код будет. Если делаешь какой движок - делай сразу по совести, а не абы как.
TheShock ты прежде чем говорить, хотя бы объясни почему неправильный. а про абы как - я только что эту тему поднимал. именно привязка к двум-трем группам в КОДЕ и является "абыкаком")
потому что не понятно, что значит Код (Text): if (UserIsAllow(54)) ты бы написал еще Код (Text): if (f68(54)) константы называл Код (Text): define('C_542', 879); классы объявлял бы как Код (Text): class C76 а методы классов как Код (Text): public function m3 И получилось бы чтото типа: PHP: <?php f44(C_43); if(f76($v1, $v54)) { $v91 = f51($v43); $v92 = ($v91 > C_76) ? f76($v91) : f77(C_12); $v93 = C76::m4($v92); if ($v93 < C_22) { echo $v36['3']; } else { echo $v32['5']; } } Потому что подход с "UserIsAllow(54)" напоминает именно это.
TheShock ты остроумнее моей кошки) не понимаешь - не лезь. англо-русский словарь тебя спасет неужели трудно понять что такое "If user is allowed"? тем более это обсуждалось выше посрать в коментах больше негде чтоли? и еще раз напоминаю - не нравится - не пользуйся! да и про идентификатор права я уже говорил - все легко меняется если нужно!
Давайте жить дружно и не тратить зря время на пустые разговоры.... Так всем будет лучше. Даже мне ибо я вижу картинку новых ответов - захожу, а тут чушь полная идет (
kostyl согласен, я за, но человек выше несет бред) не понял и оскорбляет. нормальные люди обычно спрашивают)
TheShock да ладно, то он просто в примере написал 54. На самом деле можно сделать константу ALLOW_COMMENT со значением 54. А название этой константы задавать через админку.
SeregA, это ты бред написал. Что такое UserIsAllow я знаю, а вот что такое UserIsAllow(54) - уже хз. Название функции ты, конечно, додумался сделать понятным, а вот название аргумента - говно полное. Об этом и говорится. В сообщении выше сказано, что если бы ты так называл функции и классы, как называешь аргументы, то код казался бы обфусцированным, что показано на примере
TheShock бл!!! четвертый раз говорю! ВЫШЕ ОБСУЖДАЛОСЬ УЖЕ! НА ХРЕН ТЕМУ ЕЩЕ РАЗ ПОДНИМАТЬ???? в сообщении выше приведен какой то мудацкий пример. если бы, бл, на голове росли б грибы! Apple ты решись уже завидуешь или сочуствуешь?