我有一個存儲在數據庫中的用戶需要檢查的服務列表。該列表會定期更新。 它們存儲在表中的「服務」,像這樣:php - 在數據庫中存儲複選框值並讀取它們
|id|service|
| 1|foo |
| 2|bar |
當用戶選中複選框,我在「服務」小區ID值存儲從「人」的表格。
$services = mysql_real_escape_string(implode(',', $_POST['services']));
$update = mysql_query("UPDATE people SET services='$services' WHERE id='$id'")
or die(mysql_error());
直到這裏一切工作正常。
現在,我想列出我所有的表格「服務」的服務,並與來自用戶單元「服務」的服務和用戶單元中的服務進行交叉檢查。
最終的回顯應該是這樣的。
<label>$service</label>
<input name="services[]" type="checkbox" id="services[]" value="$id" $checked>
有人可以幫我這個嗎? 謝謝!
P.S:我想這http://corpocrat.com/2009/05/24/how-to-store-and-retreive-checkbox-value-in-mysql-with-php/後,使其但我無法呼應的標籤,然後我擰這一切
備註:如果您在單個字段中存儲元素而不是作爲分隔列表,則可能會發現更容易操作和顯示數據。對於這樣的設置,你需要三張表。 People,Services和PeopleServices(它們只是People的id和Services的id)的外鍵。 – David 2011-12-21 20:08:47
你的DB輸入結構很愚蠢。您應該爲TRUE(1)或FALSE(0)值爲每個複選框的值創建不同的列。這會讓你的生活更輕鬆.. – 2011-12-21 20:12:23
@Nav你能更具體嗎? – acelasiom 2011-12-21 20:37:43