Как сделать строку определенную строку в таблице ReadOnly true или false
#1
Отправлено 24 Октябрь 2012 - 10:27
Как сделать строку определенную строку в таблице ReadOnly true или false
Заранее благодарен!
#2 Гость_Roman_*
#3
Отправлено 24 Октябрь 2012 - 19:17
Roman (24 Октябрь 2012 - 10:35) писал:
Еще один вопрос уважаемый программист
У меня есть поле типа int и там только значение 1 и 0, типа boolean
как мне задать чтоб если поле = 1 то строку в таблице невозможно редактировать и если поле = 0 то можно редактировать?
#4
Отправлено 24 Октябрь 2012 - 22:20
Я пытался блокировать строку от изменения в зависимости от значения поля. Стандартными средствами - это не представляется возможным. Если это крайне необходимо, можете помудрить с jquery - удалить class="fast_edit_text" из всех полей строки при значении Вашего поля ReadOnly = 1. Но это делается на стороне клиента, а не сервера, следовательно может найтись умник, который обойдет Вашу защиту.
Творческая группа "ТАВР".
www.TAVR.pro Художественная ковка, металлоконструкции.
www.СтолМет.рф Складные столы, стулья и системы для их хранения
#5
Отправлено 25 Октябрь 2012 - 07:19
andibrag (24 Октябрь 2012 - 22:20) писал:
Я пытался блокировать строку от изменения в зависимости от значения поля. Стандартными средствами - это не представляется возможным. Если это крайне необходимо, можете помудрить с jquery - удалить class="fast_edit_text" из всех полей строки при значении Вашего поля ReadOnly = 1. Но это делается на стороне клиента, а не сервера, следовательно может найтись умник, который обойдет Вашу защиту.
Доброе утро, спасибо за ответ, а этот class="fast_edit_text" где находится? И можете пример привести?
#6 Гость_Roman_*
Отправлено 25 Октябрь 2012 - 08:42
#7
Отправлено 25 Октябрь 2012 - 08:51
Roman (25 Октябрь 2012 - 08:42) писал:
Уважаемый, Есть ли примеры или команды как это делать?
#8 Гость_Roman_*
Отправлено 25 Октябрь 2012 - 09:11
if ($line['Интерес'] == 'Нет') // Поле "интерес" стало равно "нет" { $line['Пользователь'] = 1; // Устанавливаем в поле "Пользователь" администратора }
#9
Отправлено 25 Октябрь 2012 - 09:57
Roman (25 Октябрь 2012 - 09:11) писал:
if ($line['Интерес'] == 'Нет') // Поле "интерес" стало равно "нет" { $line['Пользователь'] = 1; // Устанавливаем в поле "Пользователь" администратора }
Спасибо огромное, еще один момент у меня в поле таблице "Кто добавил" , "Использовать права доступа" неактивно, чтоб я мог настраивать расширенные права в этом поле. Что делать?
#10 Гость_Roman_*
Отправлено 25 Октябрь 2012 - 10:01
#11
Отправлено 25 Октябрь 2012 - 10:29
Roman (25 Октябрь 2012 - 09:11) писал:
if ($line['Интерес'] == 'Нет') // Поле "интерес" стало равно "нет" { $line['Пользователь'] = 1; // Устанавливаем в поле "Пользователь" администратора }
Кроме того, для всех таблиц в базе настройка этих прав крайне утомительная процедура. Особенно, если структура временами меняется.
Javascript более универсальное решение, но действительно незащищенное. Если целью является закрыть поля от случайного редактирование - его вполне хватит, если цель - защита от несанкционированного изменения - стоит повозиться с правами доступа.
Творческая группа "ТАВР".
www.TAVR.pro Художественная ковка, металлоконструкции.
www.СтолМет.рф Складные столы, стулья и системы для их хранения
#14
Отправлено 25 Октябрь 2012 - 11:43
Roman (25 Октябрь 2012 - 10:01) писал:
Создал 2 группа доступа
1) Администратор - вставил все галочки
2) Менеджеры - убрал все галочки вставил только для просмотра
Создал поле группа тип поля группа в таблице.
В таблице "Кто добавил" поставил фильтр по группе "администратор" и в "Использовать права доступа: " поставил все галочки
В событий кнопки ok в дополнительном написал код
$line['Запрет'] = 'да';
if ($line['Запрет'] == 'Да')
{
$line['Группа'] = 2; // менеджер
}
У меня не получается насчет запрет на редактирование, может где то я что-то пропустил?
Сообщение отредактировал Tim: 25 Октябрь 2012 - 12:00
#15 Гость_Roman_*
Отправлено 25 Октябрь 2012 - 13:32
$line['Запрет'] = 'Да'; $line['Группа'] = 2;Нет смысла проверять значение поля "Запрет", если оно в том же коде выше явно обозночается.
#16
Отправлено 25 Октябрь 2012 - 17:02
Roman (25 Октябрь 2012 - 13:32) писал:
$line['Запрет'] = 'Да'; $line['Группа'] = 2;Нет смысла проверять значение поля "Запрет", если оно в том же коде выше явно обозночается.
Есть 3 пользователя
1) администратор
2) пользователь1
3) запретить
Из начальное вставлено галочки на редактирование на поль-ей администратор и пользователь1, в строку "Группа" поле группа для запрета вставлено пользователя (запретить), когда захожу под пользователь1 у меня кнопка редактирование активно, как сделать что после запрета доступ на редактирование, права на редактирование было только у администратора?
Еще момент, вы можете написать как будет реализоваться код через javascript?
Сообщение отредактировал Tim: 26 Октябрь 2012 - 08:14
#17 Гость_Roman_*
Отправлено 26 Октябрь 2012 - 08:30
$line['Группа'] = 1;1 - это группа доступа администратора. Расширенных прав в этой таблице можно администратору не назначать. Остальным группам необходимо включить расширенные права в настройках групп доступа, убрав галочки на запись. В настройках поля галочки на запись должны стоять.
Javascript выйдет очень большой и выходит за рамки поддержки на форуме.
#18
Отправлено 26 Октябрь 2012 - 14:25
Roman (26 Октябрь 2012 - 08:30) писал:
$line['Группа'] = 1;1 - это группа доступа администратора. Расширенных прав в этой таблице можно администратору не назначать. Остальным группам необходимо включить расширенные права в настройках групп доступа, убрав галочки на запись. В настройках поля галочки на запись должны стоять.
Javascript выйдет очень большой и выходит за рамки поддержки на форуме.
Я все сделал как вы сказали но у меня идет запрет на весь список. В таблице есть несколько записей. Такой вопрос, поле запрет там значение (да и нет) тип поля (текст), когда поле равно (да) то запретить редактирование для всех пользователей кроме администратора, когда поле равно (нет) то менять всем у кого стоит галочки на редактирование.
Такое возможно с расширенными правами?
Заранее благодарен.
Сообщение отредактировал Tim: 26 Октябрь 2012 - 15:39
#19 Гость_Roman_*
Отправлено 29 Октябрь 2012 - 10:40
#20
Отправлено 29 Октябрь 2012 - 12:44
Roman (29 Октябрь 2012 - 10:40) писал:
Я написал в доп.дейс
$line['Запрет'] = 'да';
if ($line['Запрет'] == 'да'){
$line['users'] = 1;
}
У меня администратор и менеджер, в администратор вставлены галочки на расш. прав. в запись и чтение, а у менеджера у меня галочки только на чтение.
при нажатии на кнопку в доп.дейс у меня группа меняется на администратора, и когда я захожу с доступом менеджера у меня поля которые я не запретил тоже не редактируются. Я хочу только поле которую администратор запретил чтоб это поля не менялись. А другие редактировались.
Очень прошу разъяснить мне.
Ссылки на рис.
http://s2.uploads.ru/Fvgl5.jpg
http://s3.uploads.ru/xpcNn.jpg
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных