2014-08-30 45 views
3

基本上我有一個表格,包含我數據庫中所有行的複選框。 用戶應該選擇他/她想要看到的那個,並提交該表單。 因此,在數據庫中,我想將所有行「可見」列設置爲false,但將其選爲true。 我想這應該工作:PHP更新設置全部爲0,但對於某些編號爲1

$sql = "UPDATE `questions` 
    SET `visible` = false; 
    SET `visible` = true WHERE ID={$radio}" ; 

但我顯然不能運行多套這樣的。在PHP中也沒有if-else-like語句,對吧?

什麼是解決這個問題的好方法?

回答

3

您可以使用conditional statements

UPDATE `questions` 
SET `visible` = 
CASE 
    WHEN ID = '$radio' THEN true 
    ELSE false 
END 

此外,請務必將其粘貼到一個查詢之前清空用戶輸入。

+0

非常感謝!我知道應該有一個簡單的解決方案! – suMi 2014-08-30 09:47:31

+0

@suMi歡迎:) – 2014-08-30 20:31:13

1

我會做這樣的說法:

UPDATE `questions` 
SET `visible` = (ID = {$radio}) 

ID = $radio等於true,然後visible設置爲true,並visible在所有其他情況下設置爲false

相關問題