我試圖創建一個顯示多個用戶數據的表。表格中的數據將能夠被編輯和更新。下面是形式佈局方式的例子:在PHP的foreach循環中使用更新SQL查詢
echo "<form action=AdminUpdateLecInfo.php method=post>";
while ($return = mysql_fetch_assoc($result)) {
$phonenumber = "$return[PhoneNumber]";
$number = str_pad($phonenumber, 11, "0", STR_PAD_LEFT);
echo " <tr class='data'>
<input type='hidden' name='id'".$return['ID']."'' value= '".$return['ID']."' />
<td class = 'title'><input class = 'title' type='text' name='title'".$return['ID']."'' value= '".$return['Title']."' /></td>
}
echo "</table>
<input class='submit' type='submit' value='Update Info' />
</form>
一旦表創建傳遞給「update.php」腳本的信息。
$sql="UPDATE completeinfo SET Title='".$_POST['title'][$return['ID']]."'
WHERE ID = '".$_POST['id'][$return['ID']]."'";
header("Location:Home.html");
我遇到的問題是,我需要添加「‘$返回[‘ID’。’」每個輸入字段的名稱,以便並非所有用戶的詳細信息與更新相同的值。我不確定是否需要對此查詢應用foreach循環,以便它適用於每個用戶並更新其詳細信息。但是目前,更新查詢不能正常工作,因爲post方法沒有正確地從表單中獲取值。請隨身攜帶,因爲我確信你可以告訴PHP對我來說是非常新的。 感謝您的幫助。
請你寫** **任何更多的SQL接口的代碼之前,你必須在[適當讀了SQL轉義](http://bobby-tables.com/php),以避免嚴重的[SQL注入漏洞](http://bobby-tables.com/)。另外,'mysql_query'不應該在新的應用程序中使用。這是從PHP的未來版本中刪除的不推薦使用的界面。像[PDO這樣的現代化替代品並不難學](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/)。像[PHP正確的方式](http://www.phptherightway.com/)這樣的指南將幫助您避免出現這樣的錯誤。 – tadman