Обновить
413
Александр Макаров@SamDark

PHP, Yii

676
Подписчики
Отправить сообщение
Если атака распределённая, подключений на IP может много и не быть.
Если в кеше имеется — не лезу.
Да. Изменять приходится исключительно иерархию ролей и действий.
По первым двум буквам понятно, о ком речь :)
Сделана немалая работа — выбрать из огромной кучи чужого говна качественный контент.
Я не спорю, что самому написать можно всё. Но в Yii этого делать не приходится.
Там наверняка и кеш есть и всё-всё ;)
Оно умеет TSQL, временные таблицы и хранимки. Как составить из этого нерекурсивную выборку я написал выше.
Это умеют практически все базы, где есть TSQL: MySQL, MSSQL, Oracle, PostgreSQL.
По сравнению с нерекурсивными методами — не быстро.
Да, на это бывает жалуются. Обещают включить больше примеров в документацию по API.
Почему нерабочий? Выборка дерева произойдёт. Уровни и порядок будут известны. Что ещё нужно?
Граф у нас уже построен и лежит в базе. Мы его как раз обходим.
Например, чтобы написать нечто легковесное, где кеш нежелателен.
Алгоритм зовётся обходом графа (в нашем случае дерева) в ширину. Про «средствами SQL» сразу оговорюсь: не SQL'92.

Выглядит примерно так:
   Взять пустые очеpеди O1 и O2
   Поместить коpень в очеpедь O1
   while (Одна из очеpедей O1 и O2 не пуста) {
      if ( O1 не является пустой ) {
                  Пусть p - узел, находящийся в голове очеpеди O1
                  Посетить веpшину p и удалить ее из O1
                  Поместить всех сыновей веpшины p в очеpедь O2, начиная со стаpшего сына.
        }
        else {
                 В качестве O1 взять непустую очеpедь O2
                 в качестве O2 взять пустую очеpедь O1
        }
    }
Выбрать любое поддерево можно нерекурсивно средствами SQL + временными таблицами.
CodeIgniter очень хорош для определённого круга задач.

Размер ни на что не влияет.
Всё, что не action приватно.

Тут та же ситуация, что с конфигурацией фаервола… или прав доступа: лучше запретить всё, а потом разрешать, чем разрешить всё а потом затыкать дыры. В CI гораздо проще случайно оставить action открытым.
Очень слабо.
А почему бы и не написать, раз для вас это критичная недоработка? Уверен, что было бы исправлено.

Информация

В рейтинге
Не участвует
Откуда
Воронеж, Воронежская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность