엑셀 업로드시 중복 거르기 sql질문

엑셀 업로드시 중복 거르기 sql질문

QA

엑셀 업로드시 중복 거르기 sql질문

본문

안녕하세요

 

게시판 엑셀 업로드를 사용중인데

 

주민번호 앞자리와 이름이 같으면 중복처리되어

업로드가 안되게 하려 합니다.

 

홍길동 880101-1

이 게시물에 있는데

 

엑셀에도

홍길동 880101-1 이 있으면 등록이 안되게요

 

현재는 주민번호앞자리만 체크됩니다.

 


// wr_2 주민번호앞자리 중복체크
$sql2 = " select count(*) as cnt from $write_table where wr_2 = '$wr_2' ";
$row2 = sql_fetch($sql2);
if(isset($row2['cnt']) && $row2['cnt']) {
$fail_wr_2[] = $wr_2;
$dup_wr_2[] = $wr_2;
$dup_count++;
$fail_count++;
continue;
}

실패코드 : <?php echo implode(', ', $fail_wr_2); ?>

중복주민번호앞자리 : <?php echo implode(', ', $dup_wr_2); ?>

 

 

 

이렇게 하면 wr_2의 주민번호 앞자리가 중복체크 됩니다.

 

wr_1에 이름이 들어가는데

 

wr_1 과 wr_2 를 동시에 체크하는 방법이 없을까요?

 

고수님들의 가르침부탁드립니다. ㅠ

이 질문에 댓글 쓰기 :

답변 3


$sql2 = " 
  select count(*) as cnt 
    from {$write_table} 
   where wr_2 = '{$wr_2}' 
     and wr_1 = '{$wr_1}'
";

$row2 = sql_fetch($sql2);
 
if (isset($row2['cnt']) && $row2['cnt']) {
  $fail_wr_2[] = $wr_1 . '|' . $wr_2;
  $dup_wr_2[] = $wr_1 . '|' . $wr_2;
  
  $dup_count++;
  $fail_count++;
  continue;
}
 
실패코드 : <?php echo implode(', ', $fail_wr_2); ?>
중복 : <?php echo implode(', ', $dup_wr_2); ?>

$sql = " select count(*) as cnt from $write_table where wr_1 = '$wr_1' and wr_2 = '$wr_2'";
$row = sql_fetch($sql);

if (isset($row['cnt']) && $row['cnt']) {
    $fail_wr_1[] = $wr_1;
    $fail_wr_2[] = $wr_2;
    $dup_count++;
    $fail_count++;
    continue;
}

$sql2 = " select count(*) as cnt from $write_table where wr_1 = '$wr_1' and wr_2 = '$wr_2' ";
$row2 = sql_fetch($sql2);
if(isset($row2['cnt']) && $row2['cnt']) {
  $fail_wr_2[] = $wr_2;
  $fail_wr_1[] = $wr_1;
  $dup_wr_2[] = $wr_2;
  $dup_wr_1[] = $wr_1;
  $dup_count++;
  $fail_count++;
  continue;
}

실패주민앞자리 : <?php echo implode(', ', $fail_wr_2); ?>
실패이름 : <?php echo implode(', ', $fail_wr_1); ?>
중복주민앞자리 : <?php echo implode(', ', $dup_wr_2); ?>
중복이름 : <?php echo implode(', ', $dup_wr_1); ?>

echo "중복 주민앞자리: " . implode(', ', $dup_wr_2);

echo "중복 이름: " . implode(', ', $dup_wr_1);

echo "실패 주민앞자리: " . implode(', ', $fail_wr_2);

echo "실패 이름: " . implode(', ', $fail_wr_1);

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

회원로그인

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