How To Specify Input Values for Checkboxes

Q

How To Specify Input Values for Checkboxes? - PHP Script Tips - Processing Web Forms

✍: FYIcenter.com

A

Checkboxes can be used in a form for two situations:

  • As a single switch - One <INPUT TYPE=CHECKBOX ...> tag, with no input value specified. When submitted with button pushed down, you will receive a value of "on". When submitted with button not pushed, this field will not be submitted.
  • As a group of multiple selections - Multiple <INPUT TYPE=CHECKBOX ...> tags with the same field name with different input values specified in the "value" attribute. When submitted, input values that associated with checked boxes will be submitted.

The sample PHP script page below is a modified version of submit_comments.php that has one group of multiple checkboxes and single switch:

<?php
  print("<html><form action=processing_forms.php method=post>");
  print("<table><tr><td colspan=2>Please enter and submit your"
    ." comments about FYICenter.com:</td></tr>");
  print("<tr><td>Your Name:</td>"
    ."<td><input type=text name=name></td></tr>\n");
  print("<tr><td>Site Visited:</td><td>"
    ."<input type=checkbox name=site value=dev>Dev FYI Center  "
    ."<input type=checkbox name=site value=sqa>SQA FYI Center  "
    ."<input type=checkbox name=site value=dba>DBA FYI Center  "
    ."</td></tr>\n");
  print("<tr><td>Like Site:</td>"
    ."<td><input type=checkbox name=rate></td></tr>\n");
  print("<tr><td>Comments:</td>"
    ."<td><input type=text name=comment></td></tr>\n");
  print("<tr><td colspan=2><input type=submit><td></tr></table>\n");
  print("</form></html>\n");
?>

If you submit the form with this page, you will get something like this:

Number of values: 4
  name = Peter
  site = dba
  rate = on
  comment = All good sites

But there is a problem with script in processing_forms.php. It picks up only one of the input values selected from the checkbox group. See the next tip for solutions.

2007-04-23, 4819👍, 0💬