Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Как передать параметры из формы с множественным значением (http://forum.oszone.net/showthread.php?t=68633)

koresaram 17-07-2006 15:39 462157

Как передать параметры из формы с множественным значением
 
всем привет. задача: имеется форма типа
Код:

<select name="AGE">
<option value="">&nbsp;</option>
<option value="12">12</option>
                <option value="13">13</option>
                <option value="14">14</option>
                <option value="15">15</option>
                <option value="16">16</option>
                <option value="17">17</option>
                <option value="18">18</option>
                </select>
        </td>
        <td>
        <select name="ANIMAL[]" class='multiple' multiple size=4>
                <option value="cat">Кошка</option>
                <option value="dog">Собака</option>
                <option value="fish">Рыбка</option>
                </select>

требуется: получить из формы данные для скрипта проблема в том, что в категории ANIMAL при выборе двух зверей name для обоих один. вычитал, что

Код:

для multiple: 
<select name="id[]" multiple="multiple"> 
<option value="0">0</option> 
<option value="1">1</option> 
</select> 
данные из формы придут, как массив $id со значениями value.

но чего то я не понимаю как это сделать на Perl. подскажите как это мне в Perl реализовать то? желательно с пояснениями кода скрипта "для особо одаренных"

ivank 17-07-2006 22:04 462299

Написанное (про массив) верно для PHP. В общем случае всё, что выбрано multiple будет передано в строке запроса с олним именем несколько раз. То есть http://blah.com/script?ANIMAL=cat&ANIMAL=dog , например. Если ничего не выбрано, то ничего не будет передано. То есть достаточно проанализировать QUERY_STRING на предмет нахождения там нескольких строк ANIMAL=xxx. Можно это делать руками, но уверен, что стандартный модуль CGI это умеет.

JASterus 19-07-2006 12:49 462845

$ar_animals = array();
$ar_animals = $_POST['animals'];
и т.д. это на пхп, не думаю, что на перле будет сильно отличаться.

E-mail 22-07-2006 13:06 463790

все данные передаются с заголовкками, методом пост или гет, например,
можно анализировать заголовки спомощью собственного алгоритма, налюбом языке, или использовать встроенные функции языка если они есть, зависит от языка


Время: 01:02.

Время: 01:02.
© OSzone.net 2001-