Search Results for 'IT (Information Tech)/PHP'


1 POSTS

  1. 2005/05/25 DB 내용 CSV 포멧 파일로 저장하기 by MNet
오늘은 DB 테이블의 내용을 읽어서 화일로 저장하는 방법을 알아 보겠습니다.

테이블의 내용을 화면에만 뿌려주면 나중에 실제 데이타를 사용해야 할 일이 있을때 많이 불편하거든요
그래서 만들어 낸것이 CSV(Comma Separated Values) 포맷을 이용해 화일로 만들고 이것을 받아서 EXCEL 등에서 사용하는 것 입니다.
CSV 포맷은 각각의 필드가 콤마(,)로 분리된 일반 텍스트입니다.

우선 이름,국어,영어,산수,음악의 필드를 가진 점수 테이블을 만듭니다.

[CODE] create table score( name char(10), korean int , english int , math int , music int ); insert into score values('진호',91,95,88,72); insert into score values('영수',88,98,100,85); insert into score values('철수',100,78,91,76); insert into score values('희동',95,76,67,95); insert into score values('둘리',78,66,82,100); <div align="right">출처 : PHPSCHOOL</div> 특별히 어려운 점은 없고 테이블 내용을 화면에 써주는 대신 화일로 써주는 것 뿐입니다. 한가지 주의할점은 파일이 생성되는 디렉토리의 퍼미션이 웹서버에게 쓰기 가능하도록 해 주셔야 합니다 예) # chmod 777 ./CSV 아래는 소스 입니다. <HTML> <BODY BGCOLOR="#006699" LINK="#99CCFF" VLINK="#99CCCC" TEXT="#FFFFFF"> <?php // ===================== DB 접속 ===================== $connect=mysql_connect( "", "mysql", "") or die( "SQL server에 연결할 수 없습니다."); mysql_select_db("test",$connect); // ===================== 화일 생성 ===================== $que1=" select * from score " ; $result=mysql_query($que1,$connect ); if(file_exists('/score.csv')) { unlink('./score.csv'); } // 만일 이전에 만든 화일이 있으면 지운다 $newline = chr(10); // LF(줄바꿈)의 ascii 값을 얻는다. $fp = fopen( "./score.csv", "w" ) or die("./score.csv 화일을 열수 없습니다") ; // score.csv 를 새로 연다 fwrite($fp,"이름,국어,영어,산수,음악"); // 타이틀 쓰고 fwrite($fp,$newline); // 줄바꾸기 $row=mysql_fetch_array($result); while($row) { fwrite($fp,$row[0].",".$row[1].",".$row[2].",".$row[2].",".$row[2]); // 점수를 한줄씩 쓰고 fwrite($fp,$newline); // 줄 바꾸기 $row=mysql_fetch_array($result); } fclose($fp); //=================== 화일 쓰기 끝 ============== echo (" <H2>CSV 화일로 저장하기</H2>"); echo (" <a href=./score.csv> 저장FILE : score.csv </a>"); ?> </center> </body> </HTML> [/CODE]

Posted by MNet

2005/05/25 19:23 2005/05/25 19:23
Response
No Trackback , No Comment
RSS :
http://missionnetwork.org/blog/eins/rss/response/343