我有HTML多個選擇框:PHP開關罩HTML多種選擇
<option value="1">First selection item</option>
<option value="2">Another selection item</option>
<option value="3">Third selection item</option>
的jQuery我發送POST請求到PHP,然後我檢查..:
switch($value) :
case 1:
$firstItem = 1;
break;
case 2:
$anotherItem = 1;
break;
case 3:
$thirdItem = 1;
break;
default:
$firstItem = $anotherItem = $thirdItem = 0;
endswitch;
然後...
$stmt = $this->db->prepare("UPDATE myTable SET firstItem = ?, anotherItem = ?, thirdItem = ? WHERE Nickname = ?");
$stmt->execute(array($firstItem, $anotherItem, $thirdItem, $nickname));
我不知道爲什麼代碼不工作。例如,如果我只選擇option with value = 2
然後$firstItem = NULL
和$thirdItem = NULL
。我認爲在每一個可能的選擇上做出很多if都是愚蠢的。我需要這樣的:選擇--- $ =與firstItem 1,$ anotherItem = $ thirdItem = 0
選項1;
option 1,2 selected - $ firstItem = $ anotherItem = 1,$ thirdItem = 0;
是的..如果任何選擇($value = 0
)然後$firstItem = $anotherItem = $thirdItem = 0
有什麼建議?提前致謝。
有些事情是錯誤的,你的開關將轉到只有*一個*的情況,這很好,如果你的用戶可以選擇只有一個選項,但是您要求的功能意味着用戶可以同時選擇多個值,這意味着'$ value'不是'int',但可能是數組 – Fanckush
對不起,如果我誤解了這個問題,但是如何處理在switch-case之前用0初始化值。當f時,默認情況下不會被命中。一世。情況2被執行。這有幫助嗎? 是的......開關盒需要被沒有ELSE的IF語句取代,因爲你有一個多重選擇,你需要每次檢查每個值。 – elvirus