| Web Programming >> PHP Programming
|
| [목차] |
|
제4장 파일처리 프로그램
1. 데이터를 파일에 저장하기 예제1 : 데이터를 파일에 저장하기
<HTML>
<HEAD>
<TITLE> Leelab - 파일 처리 </TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<?
$name = "이진관";
$address = "전북 군산시 나운동 ...";
$phone = "063-000-0114";
$handphone = "016-000-0114";
$id = "leelab";
$email = "jklee@leelab.co.kr";
$homepage = "leelab.co.kr";
$date = time();
$count = 1;
$test_file = "./testfile.data";
$test_data[0] = $name;
$test_data[1] = $address;
$test_data[2] = $phone;
$test_data[3] = $handphone;
$test_data[4] = $id;
$test_data[5] = $email;
$test_data[6] = $homepage;
$test_data[7] = $date;
$test_data[8] = $count;
$test_string = implode($test_data, " || ");
if($fp = fopen($test_file, 'w')) {
fwrite($fp, $test_string, strlen($test_string));
fwrite($fp, "\n", strlen("\n"));
echo("이름 : $name <BR>\n");
echo("주소 : $address <BR>\n");
echo("전화 : $phone <BR>\n");
echo("휴대전화 : $handphone <BR>\n");
echo("아이디 : $id <BR>\n");
echo("전자메일 : $email <BR>\n");
echo("홈페이지 : $homepage <BR>\n");
echo("가입일 : $date <BR>\n");
echo("카운터 : $count <BR>\n");
}
else {
echo("${test_file}을 여는데 실패했습니다.");
}
?>
</BODY>
</HTML>
예제 2 : 폼을 이용하여 데이터를 파일에 저장하기예제1을 수정하여 예제2를 만들면 됩니다.
<HTML>
<HEAD>
<TITLE> Leelab - 파일 처리(2)</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<?
if(!strcmp($mode, "process")) {
//$name = "이진관";
//$address = "전북 군산시 나운동 ...";
//$phone = "063-000-0114";
//$handphone = "016-000-0114";
//$id = "leelab";
//$email = "jklee@leelab.co.kr";
//$homepage = "leelab.co.kr";
$date = time();
$count = 1;
$test_file = "./testfile.data";
$test_data[0] = $name;
$test_data[1] = $address;
$test_data[2] = $phone;
$test_data[3] = $handphone;
$test_data[4] = $id;
$test_data[5] = $email;
$test_data[6] = $homepage;
$test_data[7] = $date;
$test_data[8] = $count;
$test_string = implode($test_data, " || ");
if($fp = fopen($test_file, 'w')) {
fwrite($fp, $test_string, strlen($test_string));
fwrite($fp, "\n", strlen("\n"));
echo("이름 : $name <BR>\n");
echo("주소 : $address <BR>\n");
echo("전화 : $phone <BR>\n");
echo("휴대전화 : $handphone <BR>\n");
echo("아이디 : $id <BR>\n");
echo("전자메일 : $email <BR>\n");
echo("홈페이지 : $homepage <BR>\n");
echo("가입일 : $date <BR>\n");
echo("카운터 : $count <BR>\n");
}
else {
echo("${test_file}을 여는데 실패했습니다.");
}
}else {
?>
<FORM METHOD=POST ACTION=""><br>
이름 : <INPUT TYPE="text" NAME="name"><br>
주소 : <INPUT TYPE="text" NAME="address"><br>
전화 : <INPUT TYPE="text" NAME="phone"><br>
휴대전화 : <INPUT TYPE="text" NAME="handphone"><br>
아이디 : <INPUT TYPE="text" NAME="id"><br>
전자우편 : <INPUT TYPE="text" NAME="email"><br>
홈페이지 : <INPUT TYPE="text" NAME="homepage"><br>
<INPUT TYPE="hidden" Name="mode" value="process">
<INPUT TYPE="submit" value="전송"><br>
</FORM>
<?
}
?>
</BODY>
</HTML>
예제3 : 파일 내용 보기
<HTML>
<HEAD>
<TITLE> Leelab - 파일 처리(3)</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<?
$test_file = "./testfile.data";
$fp = fopen($test_file, "r");
if(!$fp) {
echo("File Not Found !");
exit;
}
while(!feof($fp)) {
$char_data = fgetc($fp); // 한자씩 읽어와서
if($char_data != "\n") // 한 목록씩 파싱
$line_data .= $char_data;
else {
$col_data = explode(" || ", $line_data); // 각 항목별로 파싱
$name = $col_data[0];
$address = $col_data[1];
$phone = $col_data[2];
$handphone = $col_data[3];
$id = $col_data[4];
$email = $col_data[5];
$homepage = $col_data[6];
$date = $col_data[7];
$count = $col_data[8];
echo("이름 : $name <BR>\n");
echo("주소 : $address <BR>\n");
echo("전화 : $phone <BR>\n");
echo("휴대전화 : $handphone <BR>\n");
echo("아이디 : $id <BR>\n");
echo("전자메일 : $email <BR>\n");
echo("홈페이지 : $homepage <BR>\n");
echo("가입일 : $date <BR>\n");
echo("카운터 : $count <BR>\n");
}
}
fclose($fp);
?>
</BODY>
</HTML>
예제4 : 파일 내용 수정하기(카운터 수정)예제3을 수정하여 예제4를 만들면 됩니다.
<HTML>
<HEAD>
<TITLE> Leelab - 파일 처리(3)</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<?
$test_file = "./testfile.data";
$fp = fopen($test_file, "r");
if(!$fp) {
echo("File Not Found !");
exit;
}
while(!feof($fp)) {
$char_data = fgetc($fp); // 한자씩 읽어와서
if($char_data != "\n") // 한 목록씩 파싱
$line_data .= $char_data;
else {
$col_data = explode(" || ", $line_data); // 각 항목별로 파싱
$name = $col_data[0];
$address = $col_data[1];
$phone = $col_data[2];
$handphone = $col_data[3];
$id = $col_data[4];
$email = $col_data[5];
$homepage = $col_data[6];
$date = $col_data[7];
$count = $col_data[8];
echo("이름 : $name <BR>\n");
echo("주소 : $address <BR>\n");
echo("전화 : $phone <BR>\n");
echo("휴대전화 : $handphone <BR>\n");
echo("아이디 : $id <BR>\n");
echo("전자메일 : $email <BR>\n");
echo("홈페이지 : $homepage <BR>\n");
echo("가입일 : $date <BR>\n");
echo("카운터 : $count <BR>\n");
break;
}
}
fclose($fp);
if($fp = fopen($test_file, 'w')){
$col_data[8]++; // 조회 회수를 증가하고 쓰기
$return_data = implode($col_data, " || ");
fwrite($fp, $return_data, strlen($return_data));
fwrite($fp, "\n", strlen("\n"));
fclose($fp);
}else {
}
?>
</BODY>
</HTML>
|
| [목차] |
