2010-02-11 54 views
0

我有一個循環,實際上顯示的產品名稱和幾個按鈕,如:編輯,更新,取消 因爲我是顯示每個產品,它會有自己的一套EDIR,更新和取消按鈕如下。

油漆編輯更新取消

我想通過按鍵循環,使每個類別中,我可以執行不同的操作。我正在考慮使用類似btn_edit1,btn_edit2的按鈕名稱並使用for循環。 1,2是類別ID。 也許我還不夠清楚。對不起。任何人都可以給我一些建議嗎?

for($i = 0; $i<count($obj_categories_admin->categories);$i++) 
{ 

      echo "<tr>"; 

      echo "<td width='1500'>"; 
      echo "<input type='text' name='name' size = '30' value='" . $obj_categories_admin->categories[$i]['name'] . "'/>"; 

      echo "</td>"; 

      echo "<td width='500'>"; 

      echo "<input type='submit' value = 'Update details' name='submit_update_category_" . 
      $obj_categories_admin->categories[$i]['category_id'] . "'/>"; 

      echo "</td>"; 



      echo "<td width='500'>"; 

      echo "<input type='submit' value = 'Edit Sub Categories' name='submit_edit_sub_" . 
      $obj_categories_admin->categories[$i]['category_id'] . "'/>"; 

      echo "</td>"; 

      echo "<td width='500'>"; 
      echo "<input type='submit' value = 'Delete' name='submit_delete_category_" . 
      $obj_categories_admin->categories[$i]['category_id'] . "'/>"; 
      echo "</td>"; 

      echo "<td width='500'>"; 

      echo "<input type='submit' value = 'Cancel' name='cancel'" . "'/>" ; 

      echo "</td>"; 

      echo "</tr>"; 
    } 

我要像做

foreach($_POST as $key => $value) 
{ 

} 

所以,當我在它執行取決於CATEGORY_ID動作點擊一個按鈕。

我曾經嘗試這樣做的建議:

echo "<input type='submit' name='submit[add_category]'" . 
"[" . $obj_categories_admin->categories[$i]['category_id'] . "]". " value='Add' />"; 

現在,在我的課,我有:

$a1 = $_POST['submit']; 
    $which_action = reset(array_keys($a1)); 
    $which_category = reset(array_keys($a1[$which_action])); 

但是,我得到的錯誤:未定義指數提交

+1

我不明白你的問題到底是什麼?請詳細說明您正在進行的工作。你有什麼樣的循環,在哪裏? – 2010-02-11 15:54:39

+0

請張貼'for'循環的代碼。 – Gordon 2010-02-11 15:56:23

+0

不知道其中$ _ POST循環使用,但你可以這樣做:(。。$ currPost '=' $ currPostValue '
' PHP_EOL) 的foreach($ _ POST爲$ currPost => $ currPostValue) { 回聲; } – AlexV 2010-02-11 15:56:54

回答

1

我會給使用以下模式的我的提交按鈕的名稱屬性:

name="submit[which_action][which_category]" 

例如,對於您的「更新」按鈕,類別123:

name="submit[update][123]" 

當用戶點擊任何的提交按鈕,以確定用戶點擊了哪個特定按鈕,只需在您的PHP代碼中檢查$ _POST ['submit']:

$a1 = $_POST['submit']; 
$which_action = reset(array_keys($a1)); 
$which_category = reset(array_keys($a1[$which_action])); 
1

嗯,我會使用這樣的:

<fieldset> 
<!-- product info --> 
<input name="productName[paint]" /> 
<input name="productName[edit]" /> 
<input name="productName[delete]" /> 
<input name="productName[cancel]" /> 
</fieldset> 

這種方式,當你到服務器端時,一切都會在嵌套數組中完美無瑕。