2012-12-27 103 views
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> 
+0

你有什麼試過的?什麼都沒有奏效?你已經做了什麼研究來解決這個問題? – Charles

+0

'echo''; '我試過這個,但這不起作用 – raj

+0

在foreach循環之前打印oca的post值,並檢查它是否打印正確的值?我已經嘗試過你的代碼和它的工作對我很好 – Hkachhia

回答

1

,而不是

$_POST['oca'] == $odrop1 

條件如$_POST['oca']將是一個數組,嘗試

in_array($odrop1,$_POST['oca']) 
+0

我已經嘗試過這之前它也不工作 – raj

+0

更新你的代碼。你有沒有得到任何錯誤?打開E_ALL的錯誤報告。 – mithunsatheesh

+0

是的,我已更新,但我沒有得到任何錯誤 – raj

0

TRY這 -

echo '<option value="' . $odrop1 . '"' . (is_array($_POST['oca']) && in_array($odrop1,$_POST['oca']) ? ' selected' : '') . '>' . $odrop1 . '</option>'; 
+0

不,它不是蠕蟲 – raj

+0

@raj你得到了什麼錯誤,嘗試print_r($ _ POST ['oca'])並查看它的打印內容 –