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

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
탭으로 구분된 자료 입력하는 방법?

QA

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

답변 4

본문

안녕하세요?

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

 

이름    지역   성별    개수  비고

홍길동  서구   남       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>

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
filter #php ×
전체 13
© SIRSOFT
현재 페이지 제일 처음으로