Re: getting values of checkboxes.



On Nov 30, 10:50 pm, "Rik Wasmus" <luiheidsgoe...@xxxxxxxxxxx> wrote:
On Fri, 30 Nov 2007 21:38:50 +0100, The Natural Philosopher <a...@xxx> wrote:





Jerry Stuckle wrote:
jodleren wrote:
Hi all!

I have a problem - I have a list of checkboxes, with certain data...
the point is, that some of them are set, and the important thing for
mere is to get those values, which have changed from CHECKED to NOT
CHECKED.
Certain values are marked, once done, the user removes the flags, and
I need to know what was set to not being checked anymore (to remove
them from the task list).

But - I only get the $_POST value, it the item was checked.

How do I do it the other way?

Hmmmmm while writing this, I wonder whether I can use isset() -
whether the value is set, but just empty... will check tomorrow.

WBR
Sonnich

HTML only sends checkboxes which are checked. One way to do it is to
keep track of which boxes are checked (or all boxes with their previous
status) in hidden fields.

Mmm. I tend to resort to javascript at this point, set up an array of
hidden variables, and every time a checkbox is ticked or unticked, use
the 'onchange=' event handler to set the hidden variables up correctly.
THEY all get sent in the post variable..

Why not have a no javascript required fallback just as easily? An
array_diff() is quick & easy, and I'd say a lot faster to implement then
the javascript solution.

I took a look at that, I and see the idea, still I see another way -
based on all ideas here:
- a hidden input (could be an array comma separated etc...), such as
"value=yes/no"
- a checkbox, with value=yes

This does not require any java at the users end.

when returning, I have all the present value (when the page was
generated) and the changes. That means
- changes are easy to find
- I have a list of items listed (in case the list might have changed
while waiting for the users action).

I would at all avoid to compare returned data with "real ones", as
real data in my system might have changed. Therefore the hidden field
is useful here.

WBR
Sonnich
.