Using Drupal 6.20.
We can setup some form elements like this:-
<input type="select" name="somename[]"><option>ohai</option></select>
and then cycle through them in PHP with
foreach ($somename as $name) { ... }
I am trying to do the same in Drupal. I have a list of select-elements
that are identical in style. The number of elements may change in the future so the form processing has to be dynamic.
If I use the above approach, each element will overwrite the preceding one, so that ultimately only one element is printed to the screen. I can't write name="somename[$someid]"
as that will not interpret $somename
as an array.
Does Drupal support this or am I doing it worng?
Also, Is there any other alternative to achieve the same?
Here is an example to achieve what you are trying to do.
In your submit & validate function, you will get an array of values under your field's name.
Remember, enabling #tree on your element is the key to this approach. Also Drupal's form API is one of the best forms framework I have worked with.
Hope this helps.