Forum Moderators: coopster
I've got this annoying problem, of how do you go about when a user deslects a checkbox, and then update the DB accordingly.
What I am trying to achieve is when a user selects a checkbox it places a 1 in the DB, if it deselects it then it place a 0 in the DB
Code:
if ($submit == 'Edit')
{
if (isset($live))
{
// obviously I need to write some code here so that a user a deselect the checkbox
mysql_query("update tablename
set live=1
where user_num=$user_num");
}
}
<form method="post" action=show.php>
<input type=checkbox name=live value=1>
<input type="hidden" name=user_num value=<? echo $user_num?>>
<input type="submit" name="submit" value="Edit">
</form>
Many thanks
No value is passed when a checkbox is not selected. When it is selected you either get "on" (if no value is set) or the value assigned to the checkbox.
The solution:
The only way to record both positive and negative input from checkboxes is to loop through the array of possible inputs and note which appear in the $_GET or $_POST array.
I suggest something like:
$box1checked = ($box1checked == "on") ? 1 : 0;
;)