| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Общие вопросы > Обработка checkbox (динамич. кол-во) |
| Автор: Morgul 16.7.2005, 14:54 |
| приветствую. вот хотелось бы мне знать - как мне обработать динамически генерируемое количество чекбоксов? Обычно параметры я получаю так: use CGI qw(:standard); $query = new CGI; for ('q','aid', 'said') { next unless defined $_; $tp = $query->param($_); ${$_} = $tp; } это пример. но я не могу в этот for запихать 100 параметров, - как-то глупо. может кто подскажет? PS. до сих пор обходился тем, что скидывал все параметры в файл, потом считывал и анализировал. но это некрасиво, непрактично и т.п. |
| Автор: korob2001 16.7.2005, 16:14 | ||
| Всё великое в простом. Всем checkbox'ам присвой одинаковые имена, а затем получай их в массив:
В итоге, в массиве будут сохранены значения всех чекбоксов, которые имеют имя chboxes, в том порядке, в котором они появляются в твоей html страничке. Тоже можно вытворять и с другими элементами формы, например: file, radio, text и т.д. Удачи. ЗЫ: это очень упрощает загрузку нескольких файлов на сервер, т.е. когда на странице есть форма с динамическим добавлением полей для выгрузки файла, например: как на Yandex'е цепляются аттачменты. |
| Автор: sharq 18.7.2005, 16:45 | ||
| Morgul ой как странно ты их раньше обрабатывал... Почитай документацию к модулю CGI! Реально разберешься Пока ты читаешь доку, вот тебе пример, когда все значения и параметры, переданные скрипту, у тебя в хеше:
|
| Автор: Morgul 19.7.2005, 00:36 |
| короб2001 спасибо. sharq я этот код где-то позаимствовал. Мне он показался получше, чем прописывать 10-30 строк query. Иногда скрипты реально гигантские получаются, вот там параметров-то хватает. |