The single update is updating based on the $_GET variable, but you aren't passing it through the form post. The easy solution is to just remove the form action and the url parameters will be automatically forwarded.
You can convert the multiple update by:
1) rename the checkbox to: MessageRead[]
2) set the value of the checkbox to the unique ID for the table
3) apply the update server behavior. Set the ID to update to: <?php echo($loopID); ?>
4) manually wrap the update code in a for loop like:
<?php
if (isset($_POST['Update'])) {
$updateIDs = $_POST['MessageRead'];
for ($x=0; $x<sizeof($updateIDs); $x++) {
$loopID = $updateIDs[$x];
?>
/// update code here ///
<?php
}
}
?>