A

txt에 있는 파일을 database 에 순차적으로 넣고자합니다.

 txt에 있는 파일을 database 에 순차적으로 넣고자합니다.

가령
#4#wd5#575#문정희#F#과학1#220081#
#4#wd5#575#문정희#F#과학1#220081#
이런 형식으로 되어있다면 # 구분을 나눠
"4" 를 a0 에 "wd5" 를 a1 에 "575" 를 a2에 등으로
table 에 insert 하려고 합니다요.
그리고 끝으로 = 입력파일.php?목록파일.txt 로 읽어서 입력할 수 있게하려면?,,
너무 생각만 많네요. 열심히 php 공부중입니다^^

최적화 하는데요~ 힌트좀 부탁드립니다.

|

댓글 5개

$file = file(텍스트파일);
foreach( $file as $str )
{
$str2 = explode( "#", $str );
mysql_query( " insert into 디비 a = $str2[0], b = $str2[1] ........ " );
}

이렇게 하면 되지 않을가 하네요
자르기

$tmp = explode("#", "#4#wd5#575#문정희#F#과학1#220081#");
print_r($tmp);


파일읽기

$txtfile = array();
$fp = fopen("./목록파일.txt", "r");
while(!feof($fp)) {
$txtfile[] = fgets($fp, 4096);
}
fclose($fp);
a.php?file=a.txt라고 할때

// 파일을 읽어들인 후 한줄씩 구분하기
foreach(preg_split('/[\r?\n]/', file_get_contents($_GET['file'])) as $value)
{
// #로 구분해서 배열을 만든 후 인젝션방지용 이스케이프
$array = array_map('mysql_real_escape_string', explode('#', $value));

// 배열에서 처음과 마지막은 공백이니까 빼버리기
unset($array['0']);
array_pop($array);

// 필드순서대로 값을 넣어버리기
// 아래 쿼리문은 INSERT INTO table VALUES ('값1', '값2' ..... '값99', '값100') 형식으로 됨
mysql_query("INSERT INTO table VALUES ('" . implode("', '", $array) . "')");
}
감사합니다54424
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
16년 전 조회 1,217
16년 전 조회 964
16년 전 조회 2,090
16년 전 조회 1,052
16년 전 조회 1,954
16년 전 조회 1,007
16년 전 조회 1,388
16년 전 조회 1,082
16년 전 조회 2,733
16년 전 조회 1,494
16년 전 조회 3,022
16년 전 조회 986
16년 전 조회 1,486
16년 전 조회 1,029
16년 전 조회 1,569
16년 전 조회 1,223
16년 전 조회 1,766
16년 전 조회 1,565
16년 전 조회 1,133
16년 전 조회 990