2015-04-01 69 views
1

多個動作我有多個項目的列表帶有對每一行(如電子郵件Gmail的列表)的複選框。爲複選框列表

用戶選擇複選框,然後按操作按鈕來執行對所選項目(刪除例如)一些行動。然後,所選項目的列表將被髮送到php文件進行後臺處理。

但是,什麼是對選擇複選框執行多個操作的解決方案(例如,在Gmail中,我們刪除,標記爲垃圾郵件,標記爲已讀/未讀等)。

以下是我有:

design

+0

給你簡單的查詢。 – user3386779 2015-04-01 11:50:11

+0

當前查詢與此問題無關。 – 2015-04-01 12:43:31

回答

0

使用不同的「提交按鈕」每一個動作。給同一個名字,但不同的值。然後檢查它的後端

例如,

HTML

<form action="backend.php" method="post" > 
    <input type="submit" name="action" value="Delete" /> 
    <input type="submit" name="action" value="Move" /> 
    <input type="submit" name="action" value="Copy" /> 

    <input type="checkbox" name="selection[]" value="value 1" > 
    <input type="checkbox" name="selection[]" value="value 2" > 
    <input type="checkbox" name="selection[]" value="value 3" > 
    <input type="checkbox" name="selection[]" value="value 4" > 
    <input type="checkbox" name="selection[]" value="value 5" > 
</form> 

PHP

.................. 
.................. 

if($_POST['action'] == "Delete") 
    ....... 
else if($_POST['action'] == "Move") 
    ....... 
else if($_POST['action'] == "Copy") 
    ....... 
+0

完美。謝謝。 – 2015-04-04 10:51:46

0

我會給複選框,將導致在後的形式後,PHP項目陣列的名稱。 例如,name="item[]"

當表單張貼然後你可以通過與數組中的項目循環,

foreach($_POST['item'] as $item) { 
    /* do action */ 
} 
+0

我問過不同的動作。在選定的列表上沒有任何操作。 – 2015-04-01 12:44:46

+0

我的答案是關於如何在一個循環中逐個處理多個項目。採取的行動應該在表格發佈時發送。 所以您一定的項目[]複選框+附加動作領域(多個選項,即下拉菜單等)在你的HTML表單。 – xAndyx 2015-04-01 19:20:39

+0

我找到了你。但如果我們想要「複選框+按鈕(不是任何下拉列表)」會怎樣?「 – 2015-04-03 09:10:12