RE: how to create multiple selects within php

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



john...

the code (and the rfc) seems to suggest otherwise. personally, i would have
thought, if the user doesn't select a menu, then the 'menu item' should not
have anything with regards to the querystring...

however, the spec implies something different:
http://www.w3.org/TR/REC-html40/interact/forms.html#edef-OPTION

--------------------
17.6.1 Pre-selected options
Zero or more choices may be pre-selected for the user. User agents should
determine which choices are pre-selected as follows:

If no OPTION element has the selected attribute set, user agent behavior for
choosing which option is initially selected is undefined. Note. Since
existing implementations handle this case differently, the current
specification differs from RFC 1866 ([RFC1866] section 8.1.3), which states:
The initial state has the first option selected, unless a SELECTED attribute
is present on any of the <OPTION> elements.
Since user agent behavior differs, authors should ensure that each menu
includes a default pre-selected OPTION.
---------------------

if you can manage to create a sample that has 2 menu lists, each with a few
items that has the behavior you say should occur, i'd like to take a look.

i currently have code which lists 3 menus, each of which has a few items in
the list...

all the menu/lists are within a single form, with a single "inputBTN".

if the user selects the menu/list for states that has a multiple select,
then the other two lists return their 1st items, even though they haven't
been selected....

thanks

-bruce



-----Original Message-----
From: John Nichel [mailto:john@xxxxxxxxxxxx]
Sent: Monday, October 18, 2004 7:31 AM
To: php-general@xxxxxxxxxxxxx
Subject: Re:  how to create multiple selects within php


bruce wrote:
> ok...
>
> it appears to be a case of user err.. the spec seems to state that if the
> user doesn't select/specify an item, the select should return the 1st item
> within the list... arrrgggh!! this is what's happening...

Not true.  If the user doesn't select anything, nothing will be
submitted (unless you have one or more of your option tags like this
<option value="bar" selected />)

> so my question is still, how can i implement some logic that requires the
> user to actually select an item? or, how can i detect when a user has
> actually selected a list item??????

Test to see if anything has been submitted.  If your select tag is as
such...

<select name="foo[]" multiple>

When you submit the form, you can check it like this...

if ( isset ( $_POST['foo'] ) ) {
	//user has selected something
	do stuff
} else {
	//user did not select anything
	do other stuff
}

--
John C. Nichel
ÜberGeek
KegWorks.com
716.856.9675
john@xxxxxxxxxxxx

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux