banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows [PHP] Edit 1 line trong tập tin text  XML
  [Programming]   [PHP] Edit 1 line trong tập tin text 12/04/2009 04:27:15 (+0700) | #1 | 176736
[Avatar]
BlueBird
Member

[Minus]    0    [Plus]
Joined: 19/07/2003 04:08:08
Messages: 288
Location: Bến Thượng Hải
Offline
[Profile] [PM]
Các đại ca cho em hỏi. Làm sao để chỉnh sửa (cập nhập) 1 dòng trong tập tin text (abc.txt chẳng hạn) bằng PHP.
Ví dụ tập tin text abc.txt của em có dạng
Code:
admin,password
user1,password
user1,password
....,......

Đã lang thang trên google và... mỗi lần update 1 phát là toàn bộ những gì trong tập tin abc.txt bị xóa trắng sạch.
Làm sao để chỉnh sửa chính xác 1 dòng nào đó ở trong tập tin trên.
Cám ơn nhiều.
[Up] [Print Copy]
  [Question]   Re: [PHP] Edit 1 line trong tập tin text 12/04/2009 06:01:08 (+0700) | #2 | 176751
[Avatar]
motminhanh
Member

[Minus]    0    [Plus]
Joined: 06/01/2008 15:43:07
Messages: 101
Location: Homeland corp!
Offline
[Profile] [PM] [ICQ]
Bạn đã dùng những cách nào để 'update' file?
[Up] [Print Copy]
  [Question]   Re: [PHP] Edit 1 line trong tập tin text 15/04/2009 03:07:14 (+0700) | #3 | 177150
[Avatar]
BlueBird
Member

[Minus]    0    [Plus]
Joined: 19/07/2003 04:08:08
Messages: 288
Location: Bến Thượng Hải
Offline
[Profile] [PM]

motminhanh wrote:
Bạn đã dùng những cách nào để 'update' file?
 

Có cần phải vặn lại như thế không bạn smilie , biết thì chỉ cho tớ đi, đây là "cái" mà tớ đã thử.
Code:
<? session_start();

if(!isset($_POST[Submit]))
{

initial content into form
$fc=file("../username/member.txt");
$userid_no = $_GET['record_id'];
$line = split("\|",$fc[$userid_no]);
$user_id = $line[0];
$password = $line[1];
$firstname = $line[2];
$lastname = $line[3];
$email = $line[4];

}
else
{
if(isset($_GET['record_id']))
{

$update = $_POST['user_id'];
$update .= "|";
$update .= $_POST['password'];
$update .= "|";
$update .= $_POST['lastname'];
$update .= "|";
$update .= $_POST['firstname'];
$update .= "|";
$update .= $_POST['email'];
$update .= "|";
$update .= "";
$update .= "|";
$update .= "2";

$contents=file("../username/member.txt");
$fileName = "member.txt";
$edit_line = $_GET['record_id'];
$replace_text =$update;


for($c = 0; $c < count($contents)-1; $c++)
{
$contents[$c] = str_replace( "\n", "", $contents[$c] );

}

$contents[$edit_line] = $replace_text;

if (!$fp = fopen($fileName,"w")) { die("Cannot open file"); }

$count = 0;
foreach ($contents as $edit_line)
{


if($count != $_GET['record_id']){
$str="\n".$contents[$edit_line];
fwrite($fp,$str);
}
$count++;


}
fclose($fp);

}
}

?>

Và thêm 1 form Submit nữa.. chắc không cần view code đâu nhỉ
Cám ơn đã quan tâm
[Up] [Print Copy]
  [Question]   Re: [PHP] Edit 1 line trong tập tin text 15/04/2009 10:15:40 (+0700) | #4 | 177202
[Avatar]
motminhanh
Member

[Minus]    0    [Plus]
Joined: 06/01/2008 15:43:07
Messages: 101
Location: Homeland corp!
Offline
[Profile] [PM] [ICQ]
Mình hỏi lại cho chắc thôi,vì mình gà PHP lắm,trả lời sai thì dễ bị bắt bẻ smilie
mình thấy cái đoạn:
Code:
....
fopen($fileName,"w")
....

chắc là làm file của bạn về zero : http://vn2.php.net/manual/en/function.fopen.php smilie
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|