탭으로 구분된 자료 입력하는 방법?

탭으로 구분된 자료 입력하는 방법?

QA

탭으로 구분된 자료 입력하는 방법?

본문

안녕하세요?

아래와 같이 탭으로 구분된 자료를 입력하는 방법이 궁금합니다.

 

이름    지역   성별    개수  비고

홍길동  서구   남       5      외상

 

윗 첫줄은 항목명이고

두번째 줄은 자료인데요..

두번째 줄에 대하여 db에 저장하는 방법이 궁금합니다.

 

이 질문에 댓글 쓰기 :

답변 4

 

아래와 같이 잘라서 입력하면 되겠네요.

참고: https://stackoverflow.com/questions/1792950/explode-string-by-one-or-more-spaces-or-tabs


//탭으로 구분
$comp = preg_split("/[\t]/", $var);
//탭, 공백, 줄바꿈
$comp = preg_split('/\s+/', $var);
//공백문자 하나
$comp = preg_split('/ +/', $var);

어떻게 넣느냐에 따라 조금 다르긴한데요

홍길동|서구|남|5|외상

홍길녀||여|11|

홍길길||남||

 

이런식으로 중간에 | 이표시를 통한다거나 , 를 통해서 나눈다거나 하는

분류점을 넣어서 값을 한번에 넣는 방법이 많이 쓰입니다.

$wr_1 = '홍길동|서구|남|5|외상';

 

이런식으로 저장이 되고

불러올때는 $wr_1s = explode("|", $wr_1);

print_r2($wr_1s);

이런식으로 해서 보여지고 합니다.

참고할 만한 스크립트입니다.

SV 파일의 필드명만 데이타 테이블에 맞추면 된다.
테이블에 맞췄음에도 불구하고 입력 에러시 파일안에 특수 문자 검색을 해볼것.

*. CSV 파일          :  xls.cvs
*. 파일 업로드 폼    :  write.php
*. 받은파일 컨트롤  :  write_proc.php

1. 디비 테이블 생성
CREATE TABLE IF NOT EXISTS `디비테이블` (
  `idx` int(11) NOT NULL auto_increment,
  `bo_table` varchar(50) NOT NULL,
  `wr_id` varchar(10) NOT NULL,
  `code` varchar(20) NOT NULL,
  `wdate` varchar(50) NOT NULL,
  PRIMARY KEY  (`idx`)
)

2. data 폴더 생성후 퍼미션을 777 로 변경

3. xls.cvs

1번라인은 참고용으로 실제 디비에는 업로드되지 않습니다.  csv 항목중 첫번째것만 디비에 업로드합니다.
code      code2    code3
국화꽃    W          25
꽃미녀    W          26
여미지    M          27

4. write.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>CVS 파일 올리기</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
body, td, a { font-size:12px; font-family:"돋움"; }
img { border:0; }
.hp_div  { width:900px; padding:0 0 0 200px; }
.hp_div1 { font-family:"돋움"; font-size:11px; float:left; width:150px; height:20px; padding:5px 0 0 0; text-align:center; vertical-align:middle; background:#f5f5f4; color:#292929; }
.hp_div2 { font-family:"돋움"; float:left; width:300px; height:25px; padding:0 5px 0 5px; }
.hp_div3 { font-family:"돋움"; float:left; height:25px; }
</style>
</head>

<body>
<form method="post" name="form" action="write_proc.php" enctype="multipart/form-data" style="margin:0; padding:0;">
<input type="hidden" name="bo_table" value="<?php echo $bo_table; ?>">
<input type="hidden" name="wr_id" value="<?php echo $wr_id; ?>">
<div class="hp_div">

    <div class="hp_div1">파일첨부</div>
    <div class="hp_div2"><input type="file" name="upfile" id="upfile" style="width:300px; height:25px;"></div>
    <div class="hp_div3" align="center"><input type="submit" value="올리기" style="width:50px; height:25px;"></div>
    <div style="clear:both;"></div>

</div>
</form>
</body>
</html>

답변을 작성하시기 전에 로그인 해주세요.
전체 25
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT