Skip to content Skip to sidebar Skip to footer

Processing Html Checkbox Forms With Php

I am generating a checklist based on mysql data in an HTML form. When the submit button is clicked the php script changes the 'complete' field in the mysql database. How can I proc

Solution 1:

Your input element name should be an array, such as complete_goal[].

<input style="float: right;"type="checkbox" name="complete_goal[]" value="61">Milk</input>

You can update them all in a single query using a WHERE note_id IN (<?php echo implode( ',', $_POST['completed_goal'] ); ?>).

$query = mysql_query( "UPDATE `notes` SET `complete` = '1' WHERE `note_id` IN (" . implode( ',', $_POST['completed_goal'] ) . ")" );

Solution 2:

Should work and hope it helps. Afaik are all inputs with same name are treated like radiobuttons. So you have to create an array with all checkboxes.

<formmethod='post'action='listprocessor.php'><inputstyle="float:right"type='checkbox'name='complete_goal[]'value='61'>Milk</input><inputstyle="float:right"type='checkbox'name='complete_goal[]'value='117'>Eggs</input><inputstyle="float:right"type='checkbox'name='complete_goal[]'value='118'>Bread</input><inputstyle="float:right"type='submit'name='submitbtn'value='Completed'></input></form><?phpif(isset($_POST['complete_goal']))
  {
    $query = mysql_query("UPDATE `notes` SET `complete`='1' WHERE `note_id` IN ('".implode("','", array_values($complete_goal))."');");
  }
?>

EDIT: Added Chris N' idea of mysql update.

Solution 3:

I'd use a unique name attribute for each checkbox, then grab all of the checkboxes in the script you're using for submit handling and do

foreach($post_fieldsas$post_field_name) {
  if(isset($_POST[$post_field_name])) {
    // do your query
  }
}

Solution 4:

Perhaps this will work (might have to check syntax as it was off the top of my head). any checkbox that isnt' checked should not be listed in the $complete_goals array so you're safe to process them all :)

foreach ($_REQUEST['complete_goal'] as$key) {
    $query = mysql_query("UPDATE notes SET complete='1' where note_id='$key'");
}

Post a Comment for "Processing Html Checkbox Forms With Php"