0

このドロップダウンがあり、ユーザーは複数のオプションを選択できます。フォームにエラーが発生した場合、送信ボタンの後に選択した値をフォームに保持するにはどうすればよいですか

<select  onclick="document.getElementById('cand_qual4').style.display='none'; " name="oca[]" id="oca"  multiple="multiple">
<?php
      $odrop = array('B COM','M COM','BBA','MBA','LLB','LLM','CPA','CIMA','MS FINANCE','DISA','CISA','OTHER');

      foreach ($odrop as $odrop1)
      {
        echo '<option value="' . $odrop1 . '"' . (isset($_POST['oca']) && in_array($odrop1,$_POST['oca'])  ? ' selected' : '') . '>' . $odrop1 . '</option>';
      } 
 ?>         
</select>
4

2 に答える 2

1

それ以外の

$_POST['oca'] == $odrop1

$_POST['oca']配列になるような条件、試してください

in_array($odrop1,$_POST['oca']) 
于 2012-12-27T06:24:59.073 に答える
0

これを試して-

echo '<option value="' . $odrop1 . '"' . (is_array($_POST['oca']) && in_array($odrop1,$_POST['oca'] ) ? ' selected' : '') . '>' . $odrop1 . '</option>';
于 2012-12-27T06:25:30.823 に答える