做看右看好象忘了寫這個(gè)了,呵呵順便再寫一下
不少朋友用dat文件存儲(chǔ)小容量數(shù)據(jù),構(gòu)建文本數(shù)據(jù)表使用,很多和我一樣屬于小鳥級(jí)的朋友雖然對(duì)如何追加,刪除文件,清空文件都非常熟悉,但對(duì)于對(duì)文件內(nèi)的某一條記錄操作去無(wú)奈了,最近寫了一個(gè)小留言本,把這個(gè)功能實(shí)現(xiàn),這樣就給大家說(shuō)一下了。
例: data.dat _________________________________________________________
[1] name∷sex∷phone∷address∷email∷
_________________________________________________________ 此文件為保存數(shù)據(jù)的文件 [1]------------- 代表記錄數(shù)據(jù) ∷ ------------- 代表數(shù)據(jù)表的分割符號(hào),可以為非\r,\n的字符
讀取頁(yè)面read.php (內(nèi)容略) 將data.dat內(nèi)的數(shù)據(jù)編排顯示。如下
1、你多大拉--- 發(fā)表人(sports98) 2002-13-42□(checkbox) 2、你多大拉--- 發(fā)表人(sports98) 2002-13-42□(checkbox) 3、你多大拉--- 發(fā)表人(sports98) 2002-13-42□(checkbox) 4、你多大拉--- 發(fā)表人(sports98) 2002-13-42□(checkbox) 通過(guò)form將checkbox信息傳到 do.php
do.php內(nèi)容如下:
$filename="data.dat";//數(shù)據(jù)文件 $fp=file($filename);//將數(shù)據(jù)文件讀入 $number=count($fp);//計(jì)算總數(shù)據(jù)量 for($int_a=0;$int_a<$number;$int_a++){ if($int_a==$checkbox[])//這里可以是一個(gè)也可以是多個(gè)判斷,這里是以刪除一個(gè)記錄為例 continue; else $newmem.=$fp[$int_a]."\r"; //將文件內(nèi)容賦新值 } $wfp=fopen($filename,"w"); fputs($wfp,$newmen); fclose($wfp); 刪除的思想是,將文本內(nèi)的數(shù)據(jù)讀入內(nèi)存,在內(nèi)存中操作完畢后再清空文件寫,把符合刪除條件的記錄跳過(guò)就可以刪除了, 編輯就是把符合條件的記錄替換了就可以拉~
$filename="data.dat";//數(shù)據(jù)文件 $fp=file($filename);//將數(shù)據(jù)文件讀入 $number=count($fp);//計(jì)算總數(shù)據(jù)量 for($int_a=0;$int_a<$number;$int_a++){ if($int_a==$checkbox[])//這里可以是一個(gè)也可以是多個(gè)判斷,這里是以編輯一個(gè)記錄為例 $newmem.="";//這里是修改后的內(nèi)容 else $newmem.=$fp[$int_a]."\r"; //將文件內(nèi)容賦新值 } $wfp=fopen($filename,"w"); fputs($wfp,$newmen); fclose($wfp);
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!