За последние 24 часа нас посетили 19347 программистов и 1615 роботов. Сейчас ищут 867 программистов ...

if условие

Тема в разделе "PHP для новичков", создана пользователем Колбася, 26 окт 2012.

  1. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Есть задача
    На сайте в бд есть цифры (требования к пользователю)
    И в бд же у пользователя есть права на использование (разрешения) .

    Пробую сделать условие -
    Если у пользователя имется права хотябы от цифры 1 до 2 и число - требование к доступу находится в диапозоне от 1 до 2 то ...
    (числа в бд могут быть от 1; 1.1; 1.2; 1.3; по требованиям и прав на использование у пользователя)
    Как тут быть? Как лучше все описать?
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    нипанятна
     
  3. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Код (PHP):
    1. ($user['prava'] >= 1 && $user['prava'] <= 2 && $user['prava'] == $row['tprava'])  
    вот как-то так

    Добавлено спустя 23 секунды:
    или так
    Код (PHP):
    1. (($user['prava'] >= 1 && $user['prava'] <= 2) === ($user['tprava'] >= 1 && $user['tprava'] <= 2)) 
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    цель какая?
     
  5. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    во
    Код (PHP):
    1. (($user['prava'] > 1 && $user['prava'] < 2) === ($row['nprava'] >= 1 && $row['nprava'] <= 2))  
    Добавлено спустя 50 секунд:юсер права же не в столбце требований прав они в row были

    Добавлено спустя 34 секунды:
    цель если это условие выполняется - то дается ссылка

    Добавлено спустя 7 секунд:
    или кнопка
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ты какую-то хрень мутишь. не понятно ничерта.
     
  7. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Коллега подскажите а вот в mysql запросе можно использовать && ?
     
  8. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Нет нельзя. Там своего добра хватает - AND, OR, NOT т.д.
     
  9. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    А вот тут что несовместимое написано, если в mysql писать?

    Код (PHP):
    1. or ((".$user['prava']." > 1 AND ".$user['prava']." < 2) === (i.nprava > 1 AND i.nprava < 1.99)) 
    если `acess` as i
     
  10. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    читаю и нифига не понимаю :)
    если это права на что-то то почему просто не использовать двоичную систему, но в строке.
    1 - читать
    2 - создавать / редактировать свои
    3 - удалять
    4 - редактировать все
    5 - удалять все
    итого имеем простую строку с полными правами
    Код (PHP):
    1. $user_rights = '11111'; 
    или с правами только на чтение
    Код (PHP):
    1. $user_rights = '00001'; 
    Нужно запросить минимальные права, тогда можно просто спросить
    Код (PHP):
    1. if($user_rights <= 11){
    2.     // Чел имеет права только на чтение и создание/редактирование 
    3. } 
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    лучше использовать банальную таблицу с упоминанием прав кто что может =)
     
  12. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    Всё равно в итоге будет двоичная система =) т.е. ДА\НЕТ
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну как сделаешь так и будет. число может значить и да/нет, может значить и количество файлов допустим... и т.п. это уже от тебя зависит. никаких системных ограничений нет.
     
  14. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    я бы для такой цели ввёл бы уже группы, которые отдельно настраиваются.. А права оставил именно ДА\НЕТ
    Накладно для каждого выставлять отдельные требования к "количеству файлов"... из практики знаю ;)

    Добавлено спустя 5 минут 33 секунды:
    как раз сейчас именно этим занимаюсь... т.е.
    - типы пользователей (администратор, управляющий, редактор, автор, пользователь, гость...)
    - права для каждого типа ДА\НЕТ
    - группы с правами к доступу к тем или иным ресурсам...

    Вот тут и получается что к примеру только Редакторы имеют право загружать файлы, но только группа VIP не имеет ограничение на количество и объём
     
  15. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    смотря какая задача. если это CRM маленькой фирмы, то может и группы не нужны...

    Но я за группы. Меньше просто путаницы будет. А то поставишь ченить комунить, потом забудешь и хер найдёшь.
     
  16. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Попробую добавить ещё 1 столбец с *подправами
     
  17. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Какой столбец? =) ты не понял. Таблицу.
    юзер право

    петька может читать
    петька может писать
    петька может файлы слать
    васька может читать

    и т.п.
     
  18. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Усложнять неохота, но прийдется
     
  19. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    лады. дело житейское.
     
  20. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    )