From: Michael Campbell Date: 2002-05-16T00:56:00+09:00 Subject: Re: cgi params api > > > Now, a parameter that looks like "foo=" appears the same as if > > > foo wasn't defined, but "foo=" is very different than if foo > > > weren't passed as a parameter at all. > > > > Is that important? If so, conceptually or pragmatically? > > Conceptually, so far. I haven't come across any good examples > of pragmatic reasons why it's important. You see where I'm going with this train of thought, I'm sure. > I realized that the suggestion I made is probably fine: > > query string: foo=bar&quux= > > cgi["foo"].to_a # => ["bar"] > cgi["quux"].to_a # => [""] > cgi["abc"].to_a # => [] > > You can test for a parameter that wasn't in the query string > by asking cgi["abc"].to_a.size == 0 or cgi["abc"].to_a == []. That seems workable. On an unrelated note (or perhaps not), given: query string: foo=bar&foo=baz&foo=blat I find the suggestion of: cgi["foo"] == "bar" .... unclean, somehow. I'm not up on the specs, but given a multi-select, is order in the query string defined? Is it even guaranteed to be the same each time? > (Hi, Michael. Small world ... ;-) ) Indeed. I've been lurking here quite awhile. =) ===== -- Yahoo IM: michael_s_campbell __________________________________________________ Do You Yahoo!? LAUNCH - Your Yahoo! Music Experience http://launch.yahoo.com