我想知道是否有人可以看看這段代碼,並幫助我想出一個更好的方式來做到這一點,如果有的話。jquery追加/刪除並保存到數據庫
我正在使用jQuery append/remove添加和刪除列表項。我的代碼首先從數據庫中選擇任何現有的行並將其顯示在列表中,然後用戶可以添加或刪除列表中的任何元素。
我有一個類似的數據庫結構:
object_id element_id auto order
1 1 0 2
1 2 0 1
1 3 1 3
用戶已經完成了追加後/刪除我將剩下的HTML代碼與此類似:
<ul id="element-list" class="ui-sortable"><li>
<label for="element">Element Description</label>
<input type="hidden" value="1" name="element[1][id]">
<input type="checkbox" value="" name="element[1][auto]">
</li>
<li>
<label for="element">Element Description</label>
<input type="hidden" value="2" name="element[2][id]">
<input type="checkbox" value="" name="element[2][auto]">
</li>
</ul>
由於用戶可以添加和刪除包含數據庫中存在的行的元素我很困惑如何最好將這些更改保存到數據庫中。目前,我刪除所有相應的行,然後在一個循環中插入新行如下:
foreach($_POST['element'] as $element){
$auto = (isset($element["auto"])) ? 1 : 0;
$query="INSERT INTO $table (object_id, element_id, auto) VALUES ('".$object_id."', '".$element["id"]."', '".$auto."') ";
}
我想知道是否有更有效的方式來做到這一點不是刪除所有行,然後插入新的?
任何輸入,將不勝感激。
感謝
保羅
這是一種EAV模式嗎? – xmarcos 2010-09-28 16:20:16