一次叫出多筆資料,然後在同一個網頁中「逐一」「分別」做不同的處理,最後「同時」對資料庫 update or insert 。每一筆資料所收到的update 、insert數據並不相同! ============================ 處理要點在於 _____ loop + array
1.從資料庫叫出資料: db_query進行looping的同時,把相關欄位需要update的資料通通納入array. 依照各人需求,這些資料可以用text、checkbox、或者hidden等各種型態呈現。當然,checkbox是最常見的type. 例如,郵件處理網頁就大量使用checkbox. 2.修改後的資料回存作業 要點在count(array) + loop + db_update: 根據count的結果進行迴旋,把db_update放進去,讓loop去完成所有資料的update回存作業。 範例如下: ================================================ ####1.update.php: 以loop+array取出資料以便update........
<form action="activate.php"> #在這裡呼叫資料庫 $query="select * from $userstable where...................
#進入loop逐一取出資料 $i=0; while ($i < $num): ............... $id=mysql_result($result,$i,"id"); .................. ............................ #以適當的type取出必須更新的欄位,構成array .......... echo "<td align................... echo "<td align=middle><input type=text size=3 name=\"Cname[]\" value=\"$name\"></td></tr>"; echo "<input type=hidden name=\"Cid[]\" value=\"$id\">";
$i++; endwhile;
====================================================== ####2.activate.php:資料更新後,透過loop+array完成回存...................
....... for ($i = 0; $i < count($Cname); $i++) { $name = $Cname[$i]; $id= $Cid[$i];
$query = "update $userstable set name='$name' where id='$id'"; .............
|