2013-03-12 120 views
0

檢索$ _ POST數據我有這個頁面:從動態形式

http://i.stack.imgur.com/W2Aan.png

當我點擊Enregistrer按鈕,我要保存所有的我已經到Note文本字段進行的修改。

這些文本字段使用SELECT語句生成:

for($i=0; $i<$rows_number; $i++) 
{ 
    echo '<tr>'; 
    echo '<td>' . mysql_result($students, $i, 'num_insc') . '</td>'; 
    echo '<td>' . mysql_result($students, $i, 'nom') . '</td>'; 
    echo '<td> <input style="text-align:center" type="number" name=note_"' 
     . mysql_result($students, $i, 'num_insc') . '" id="note" value="' 
     .mysql_result($students, $i, 'note').'"> </td>'; 
    echo '</tr>'; 
} 

所以有些note文本字段的名稱是「num_」 +對應這個文本字段的N° Inscription。例如,在圖像中,您可以看到第一行的N° Inscription1,因此與此行對應的註釋文本字段的名稱是'num_1'。

當我點擊Enregistrer按鈕時,表單數據將被髮送到同一頁面,我使用$ _POST來獲取這些信息。

但問題是如何檢索每個文本字段的值並更新數據庫中對應於此文本字段的行?由於文本字段的數量會有所不同,並且會根據數據庫中有多少條記錄而發生變化。

+0

[**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再被維護[並且被正式棄用](http://j.mp/XqV7Lp)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。 – Kermit 2013-03-12 02:33:03

+0

@AarolamaBluenk我知道PDO,我更喜歡使用它,但不幸的是,我們正在使用mysql_ *學習PHP。 – 2013-03-12 02:40:33

回答

1

我看到至少兩個選項:

  1. 隱藏在hiddeninput字段原始值;然後比較提交。這將減少調用數據庫原始值所需的開銷。但是,這不太安全。
  2. 獲取原始值,然後比較相應的$_POST值。
+0

但提交後,如何從$ _POST數組中獲取註釋文本字段的數量,以及如何檢索它們? – 2013-03-12 02:47:09

+0

@YukinaYukinatte從'var_dump($ _ POST)'開始。這會顯示你正在發佈的內容。 – Kermit 2013-03-12 02:50:27