메뉴 건너뛰기

프로그램언어

조회 수 10417 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<!DOCTYPE html>
<meta charset="utf-8" />
<?php
include 'lib_my.php';
include 'lib_arr.php';
 
$action = '';
if(isset($_POST['action']))$action = $_POST['action'];
 
//폼이 입력되었을 때 처리부분
if($action == 'form_submit') {
        $table_name = trim($_POST['table_name']);
 
        //엑셀 자료를 행으로 나누기
        $rows = explode("\n", $_POST['excel_text']);
        for($i=0; $i<count($rows);$i++) {
                //공백만 있는 줄은 완전히 비움
                if(trim($rows[$i])=='')$rows[$i] = '';
                else {
                        //열로 나누기
                        $rows[$i] = explode("\t", $rows[$i]);
                        $rows[$i] = array_map('trim', $rows[$i]); 
                }
        }
        //빈 줄 제거
        $rows = array_filter($rows);
 
        //첫줄에서 컬럼명 추출
        $colnames = $rows[0];
        array_splice($rows, 0, 1);
 
        //배열로 정리
        for($i=0;$i<count($rows);$i++) {
                $rows[$i] = array_combine($colnames, $rows[$i]);
        }
 
        //배열을 DB테이블로 삽입
        insert_rows($rows, $table_name, 'test');
        exit;
}
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<input type="hidden" name="action" value="form_submit" />
<br/>테이블명: <select name="table_name">
<?php
$tabs = query_arr("SHOW TABLES");
foreach($tabs as $tab) {
	echo "<option value='$tab'>$tab</option>";
}
?>
</select>
<br/>내용
<br/><textarea name="excel_text" style="width:100%;height:300px;"></textarea>
<br/><input type="submit" value="제출하기" />
</form>


실행결과

INSERT INTO table1 (emp_no,dept_name,emp_name) VALUES ('201102001','영업팀','한놈');
INSERT INTO table1 (emp_no,dept_name,emp_name) VALUES ('201201002','개발팀','두시기');
INSERT INTO table1 (emp_no,dept_name,emp_name) VALUES ('201201003','개발팀','석삼');


insert_rows($rows, $table_name);




List of Articles
번호 제목 날짜 조회 수
171 정규식 2017.04.13 11120
170 파일시스템, 폼 파일업로드 관련 함수 2017.03.27 13164
169 네이버 자동 띄어쓰기를 이용하기 2017.03.27 11043
168 php 엑셀 다운로드 구현 2017.03.07 14851
167 두 날짜 사이의 차이 구하기 2017.03.07 11448
166 날짜 일수 차이 계산 2017.03.07 11977
165 php 세션 유지시간 늘리기 2017.03.07 12757
164 리다이렉션(페이지 이동)의 3가지 방법, location.href 2017.03.07 12235
163 자릿수만큼 앞에 0 붙이기 2017.03.07 11679
162 세션 시작 / 세션 데이터 추가 / 세션 데이터 삭제 / 세션 종료하기 2017.03.07 11066
161 도메인 앞에 자동으로 WWW를 붙이는 방법 2017.03.07 11382
160 php 내장함수 2017.03.06 10546
159 www가 붙은 도메인과 안붙은 같은 도메인, 로그인 세션 유지 2017.03.06 10489
158 PHP 날짜/시간 정리 2017.03.06 11146
157 몫과 나머지 구하기 2017.03.06 10658
156 체크박스, post 로 넘기고 받아서 다시 체크하기, checkbox 2017.03.06 12064
155 파일 이름에서 확장자 추출마스터 2017.03.06 12308
154 http://홈주소/?mode=xxx 하는방법 2017.03.06 10597
153 기본적인 페이징 2017.03.06 12667
152 PHP 속도 테스트 20 가지 2017.03.06 10598
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved