вы хотите получить значение флажка, поэтому вам нужно поместить в массив.
В контроллере
public function update() {
$completed_asap = $this->input->post('asap');
// No need to echo $completed_asap. If you want then please do below line.
// var_dump($completed_asap);
foreach ($completed_asap as $asap_id) {
echo 'The asap with id = ' . $asap_id. ' is marked as completed.<br>';
}
}
На ваш взгляд
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Simple CodeIgniter</title>
<link rel="stylesheet"
href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<h1>Todos</h1>
<?php echo form_open('controller_name/update'); ?>
<div class="list-group">
<?php foreach ($todos as $todo) { ?>
<div class="list-group-item clearfix">
<?php echo form_checkbox('asap[]', $asap->id, $asap->completed); ?>
<?php echo $asap->task; ?>
</div>
<?php } ?>
</div>
<button type="submit">Submit</button>
<?php echo form_close();
</div>
</body>
</html>