一次叫出多筆資料,然後在同一個網(wǎng)頁中「逐一」「分別」做不同的處理,最後「同時」對資料庫 update or insert 。每一筆資料所收到的update 、insert數(shù)據(jù)並不相同! ============================ 處理要點(diǎn)在於 _____ loop + array
1.從資料庫叫出資料: db_query進(jìn)行l(wèi)ooping的同時,把相關(guān)欄位需要update的資料通通納入array. 依照各人需求,這些資料可以用text、checkbox、或者h(yuǎn)idden等各種型態(tài)呈現(xiàn)。當(dāng)然,checkbox是最常見的type. 例如,郵件處理網(wǎng)頁就大量使用checkbox. 2.修改後的資料回存作業(yè) 要點(diǎn)在count(array) + loop + db_update: 根據(jù)count的結(jié)果進(jìn)行迴旋,把db_update放進(jìn)去,讓loop去完成所有資料的update回存作業(yè)。 範(fàn)例如下: ================================================ ####1.update.php: 以loop+array取出資料以便update........
<form action="activate.php"> #在這裡呼叫資料庫 $query="select * from $userstable where...................
#進(jìn)入loop逐一取出資料 $i=0; while ($i < $num): ............... $id=mysql_result($result,$i,"id"); .................. ............................ #以適當(dāng)?shù)膖ype取出必須更新的欄位,構(gòu)成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'"; .............
|