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

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

QA

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

답변 3

본문

안녕하세요

 

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

 

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

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

 

홍길동 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);

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로