On Mon, Jul 21, 2008 at 08:54:41PM +0200, Jaap de Heer wrote:
Howdy,
I ran into trouble with Hunchentoot trying to process the result of a form containing a select multiple:
<select multiple name="foo-or-bar"> <option value="foo">Foo <option value="bar">Bar </select>
The user can select both foo and bar, which results in both being submitted. In the POST request, this looks something like: "other-field-1=x&foo-or-bar=foo&foo-or-bar=bar&other-field-2=x"
Hunchentoot will pick up on only one of them, i.e. (get-post-parameter "foo-or-bar") will be either "foo" or "bar" but not both; it should be both.
I disagree (though I'm not sure exactly what you mean by GET-POST-PARAMETER, which isn't a part of Hunchentoot I've ever seen). If you need multiple parameter values for a given name, you can pick them out of the POST-PARAMETERS alist easily enough:
(defun post-parameters (name) (let ((alist (tbnl:post-parameters))) (loop for ((key . value)) on alist when (string= key name) collect value)))
Zach