ブラケット表記を使用する前に要素をグループ化しましたが、何かを見落としているに違いありません。おそらく、別の目 (または数千人) が、これが裏目に出ている理由を見つけることができます。
foreach ( $record as $field => $value) {
if(strpos($value , '~') !== FALSE){ //All drop down lists are separated by ~
$rows_of_dlist .= '<tr>';
$stored_field = explode ( "mlljx", $value );
$stored_field [0] = trim ( $stored_field [0] ); //Title of the list
$stored_field [1] = trim ( $stored_field [1] ); //Values of the list
$dlist = explode ( '~', $stored_field [1] );
foreach ( $dlist as $dlist ) {
$list_values .= " <td><input type='checkbox' name='selected_option[]'value='$dlist'/> $dlist</td>";
}
$rows_of_dlist .= "<td align = 'center'>$stored_field[0]</td> $list_values</tr>";
<form id="all" name="all" method="POST" action="$page_name?page_view=report" >
<table align="center" width = "100%" border = "2">
<th colspan = "1">Name Of Custom Drop-down List</th>
<th colspan = "10">Drop-list Values</th>
$rows_of_dlist
<tr>
<td align = 'center' colspan='10'>
<input type="submit" value="Make PDF" name = "make_pdf"/>
</td>
</tr>
</table>
</form>
値がポストされた後、POST 配列をテストします。
var_dump($_POST);
exit;
次に、$_POST['selected_option']
ボックスを1つだけ選択しても「配列」と表示されます。