2013-03-07 57 views
0

我在PHP有點菜鳥,但我正在嘗試開發一些帶有表格和值編輯選項的後臺。PHP設置窗體值

到現在爲止,我有表所示:

enter image description here

但我有點這個問題竊聽:

改變按鈕正在實施這樣的:

for ($i = 0; $i < count($a); $i++) { 
      ?> 
      <tr> 
      <td><i onclick=" 
      document.form1.deviceFeatValID.value = <?php echo $a[$i][DEVICE_FEATURE_VALUE_ID] ?>; 
      document.form1.deviceID.value = <?php echo $a[$i][DEVICE_ID] ?>; 
      document.form1.deviceClassFeatID.value = <?php echo $a[$i][DEVICE_CLASS_FEATURE_ID] ?>; 
      document.form1.deviceFeatureVal.value = <?php echo $a[$i][DEVICE_FEATURE_VALUE] ?>; 
      document.form1.submit();" class="icon-refresh" ></td> 
      <td><?php echo $a[$i]['DEVICE_FEATURE_VALUE_ID']; ?><td><?php echo $a[$i]['DEVICE_ID']; ?><td><?php echo $a[$i]['DEVICE_CLASS_FEATURE_ID']; ?><td><?php echo $a[$i]['DEVICE_FEATURE_VALUE']; ?> 
      </tr> 
      <?php 
      } 
      ?> 

也就是說,通過Javascript,我設置了這個表單的輸入值,與.php相同:

<form name="form1" method="post" action="deviceFeatureValueFRM.php"> 
      <input type="hidden" name="deviceFeatValID"/> 
      <input type="hidden" name="deviceID"/> 
      <input type="hidden" name="deviceClassFeatID"/> 
      <input type="hidden" name="deviceFeatureVal"/> 
      <input type="hidden" name="hiddenTypeField"/> 
     </form> 

但是......你認爲這是一個很好的做法嗎?還有其他解決方案嗎?!

這段代碼的目標是檢測哪一行即將被編輯。

親切的問候,

山姆

+1

是的。爲什麼不在PHP中定義它們?此外,你使用的是突破性的JS這是不好的做法,... – BenM 2013-03-07 13:07:18

+0

我已經嘗試過: 我離開了那個形式完好無損,而是刷新圖標,我用提交輸入按鈕。但我怎樣才能設置每個窗體隱藏的輸入由PHP? 感謝您的快速響應BenM :) – Sammy 2013-03-07 13:11:19

回答

2

爲什麼這樣做的JavaScript?只需給輸入字段設置如下值:

<input type="hidden" name="deviceFeatValID" value="<?php echo $a; ?>"/> 

其中$a可以是任何您想要的變量。

+0

但表單旨在到另一個頁面,我想知道哪個輸入提交按鈕被按下:)。 感謝您的快速響應SeanWM :) – Sammy 2013-03-07 13:13:30

+0

您可以通過爲其分配不同的名稱(或值)來輕鬆檢測哪個'submit'元素被點擊了... – BenM 2013-03-07 13:14:17

+0

好吧,如果您有固定數量的按鈕,則可以這樣做。但在我的情況下,我不知道,乍一看我有多少行:S 謝謝你的快速反應:) – Sammy 2013-03-07 13:20:13

0

那麼,我會建議你有所有文件分開。假設你有一個PHP文件。一個文件用於Javascript,另一個用於HTML。所以,如果你想使用PHP函數或任何只需要通過AJAX調用它們。

這樣你就會有一個更乾淨的代碼和更安全的代碼。

+0

感謝您的快速回復。 我已經設置了多個文件一次,我知道我提出的問題並不完美:)。 但我有優先級嘗試避免在窗體上的參數通過javascript,通過單擊更改按鈕,並確切知道哪個按鈕被按下:) – Sammy 2013-03-07 14:26:35