Ошибка системы контроля FormApi для случая type= select свойство multiple без requered =true
Актуально только для 5 ветки.
6 такой ошибки не содержит.
<?php
$options = array(1,2,3);
$form['some_select'] = array(
'#type' => 'select',
'#multiple' => true,
'#required' => false,
'#options'=> $options
);
?>
при комбинации параметров multiple = true, requared=false, и type=select - FormApi drupal 5 работает неправильно и позволяет передать абсолютно любой параметр через запрос пост.
т.е. FromApi не контролирует переданное значение на предмет входит ли значение в изначальный массив параметров.
Где это может быть опасно
Модуль taxonomy, словарь позволяет выбрать несколько терминов, но при этом выбор не является обязательным. Злоумышленник может в таком случае присвоить ноде абсолютно любой тег из любого словаря существующего в системе.
Решение проблемы - иметь свою функцию валидации для элемента select.
Друпал 6 не подвержен.