csv로 게시판에 데이터 업로드 후 정렬 인시(?) 오류 질문입니다

csv로 게시판에 데이터 업로드 후 정렬 인시(?) 오류 질문입니다

QA

csv로 게시판에 데이터 업로드 후 정렬 인시(?) 오류 질문입니다

본문

csv로 게시판에 데이터를 입력한 후 추가한 필드중 하나가 정렬이 안됩니다.


따로 게시판에서 글쓰기로 동일한 내용을 올린 경우에는 결과에 잘 나오구요.
phpMyadmin에서 csv로 올린 게시물을 내용 수정없이 그냥 수정(확인)만 해주면 목록에 나옵니다 ;;

대량등록을 위해서 엑셀등록을 한건데, 일일이 바꿔줘야 한다면..;;

이런 경우가 있는것인지 업로드하는 문서에 문제가 있는것인지 아무리 찾아보고 이리저리 해봐도 안되네요;;

 

--------------------------------------

 

list.php 수정한 부분입니다

ca_name, wr_local_1 까지는 정렬이 되는데 wr_local_2 가 문제인데요

왜 인식을 못하는 것인지...

 

if ($sca || $stx)
{
    $sql_search = get_sql_search($sca, $sfl, $stx, $sop);
   
    if ($local) {
      $sql_search .= " and wr_local_1 = '$local' "; // 광역지역
    }
    if ($local2) {
      $sql_search .= " and wr_local_2 = '$local2' "; // 상세지역 <= 이 부분이 안되고 있습니다.
    }
   
    // 가장 작은 번호를 얻어서 변수에 저장 (하단의 페이징에서 사용)
    $sql = " select MIN(wr_num) as min_wr_num from $write_table ";
    $row = sql_fetch($sql);
    $min_spt = $row[min_wr_num];

    if (!$spt) $spt = $min_spt;

    $sql_search .= " and (wr_num between '".$spt."' and '".($spt + $config[cf_search_part])."') ";

    // 원글만 얻는다. (코멘트의 내용도 검색하기 위함)
    $sql = " select distinct wr_parent from $write_table where $sql_search ";
    $result = sql_query($sql);
    $total_count = mysql_num_rows($result);
}

 

---------------------------------------------

 

엑셀 업로드 소스중 루프 부분입니다.

데이터 입력은 제대로 되고 있습니다.

 

for($i=1;$i<count($csvArray)-1;$i++) {
 $xinfo=explode(",", $csvArray[$i]);
 $xwr_id=$xinfo[0]; // 글번호 wr_id
  $xbo_table=$xinfo[1]; // 게시판 - bo_table
  $xbo_subject=$xinfo[2]; // 업종(대) - bo_subject
  $xca_name=$xinfo[3]; // 업종(중)/분류 - ca_name
  $xwr_subject=$xinfo[4];; // 업체명 - wr_subject
  $xwr_content=$xinfo[5]; // 상세설명 - wr_content
  $xwr_link1=$xinfo[6]; // 홈페이지 - wr_link1
  $xwr_1=$xinfo[7]; // 전화번호 - wr_1
  $xwr_2=$xinfo[8]; // 핸드폰 - wr_2
  $xwr_4=$xinfo[9]; // 월사용료 - wr_4
  $xwr_5=$xinfo[10]; // 이용시간 - wr_5
  $xwr_6=$xinfo[11]; // 프로그램안내 - wr_6
  $xwr_addr1=$xinfo[12]; // 주소1
  $xwr_addr2=$xinfo[13]; // 상세주소
  $xwr_tag=$xinfo[14]; // 태그(키워드) - wr_tag
  $xwr_local_1=$xinfo[15]; // 지역(광역) - wr_local_1
  $xwr_local_2=$xinfo[16]; // 지역2(시/군/구) - wr_local_2
 
 // 쉼표로 치환 {.}
  $xca_name=trim(addslashes(str_replace("{.}",",",$xca_name))); // 업종(중)/분류 - ca_name
  $xwr_subject=trim(addslashes(str_replace("{.}",",",$xwr_subject)));; // 업체명 - wr_subject
  $xwr_content=trim(addslashes(str_replace("{.}",",",$xwr_content))); // 상세설명 - wr_content
  $xwr_link1=trim(addslashes(str_replace("{.}",",",$xwr_link1))); // 홈페이지 - wr_link1
  $xwr_1=trim(addslashes(str_replace("{.}",",",$xwr_1))); // 전화번호 - wr_1
  $xwr_4=trim(addslashes(str_replace("{.}",",",$xwr_4))); // 월사용료 - wr_4
  $xwr_5=trim(addslashes(str_replace("{.}",",",$xwr_5))); // 이용시간 - wr_5
  $xwr_6=trim(addslashes(str_replace("{.}",",",$xwr_6))); // 프로그램안내 - wr_6
  $xwr_addr1=trim(addslashes(str_replace("{.}",",",$xwr_addr1))); // 주소1
  $xwr_addr2=trim(addslashes(str_replace("{.}",",",$xwr_addr2))); // 상세주소
  $xwr_tag=trim(addslashes(str_replace("{.}",",",$xwr_tag))); // 태그(키워드) - wr_tag
 
  $xwr_11 = $xwr_addr1 . " " . $xwr_addr2 ; // 주소를 합친다
 
  // 따옴표로 치환 {?}
  $xca_name=str_replace("{?}","\'",$xca_name); // 업종(중)/분류 - ca_name
  $xwr_subject=str_replace("{?}","\'",$xwr_subject);; // 업체명 - wr_subject
  $xwr_content=str_replace("{?}","\'",$xwr_content); // 상세설명 - wr_content
  $xwr_link1=str_replace("{?}","\'",$xwr_link1); // 홈페이지 - wr_link1
  $xwr_1=str_replace("{?}","\'",$xwr_1); // 전화번호 - wr_1
  $xwr_4=str_replace("{?}","\'",$xwr_4); // 월사용료 - wr_4
  $xwr_5=str_replace("{?}","\'",$xwr_5); // 이용시간 - wr_5
  $xwr_6=str_replace("{?}","\'",$xwr_6); // 프로그램안내 - wr_6
  $xwr_11=str_replace("{?}","\'",$xwr_11); // 주소 wr_11
  $xwr_tag=str_replace("{?}","\'",$xwr_tag); // 태그(키워드) - wr_tag
 
 if(!$xbo_table || $xbo_table=="") {
   if($xbo_subject == "운동") {
     $xbo_table = "G05_1" ;
   } elseif($xbo_subject == "병원") {
     $xbo_table = "G05_2" ;
   } elseif($xbo_subject == "피부/미용") {
     $xbo_table = "G05_3" ;
   } else {
     alert("업종(게시판)값이 올바르지 않습니다.");
   }
 }
 
  $tmp_write_table = $g4['write_prefix'] . $xbo_table;
 
  if ($member[mb_id])
  {
    $mb_id = $member[mb_id];
    $wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick];
    $wr_password = $member[mb_password];
    $wr_email = $member[mb_email];
    $wr_homepage = $member[mb_homepage];
  }
  else
  {
    $mb_id = "";
    // 비회원의 경우 이름이 누락되는 경우가 있음
    $wr_name = strip_tags(mysql_escape_string($_POST['wr_name']));
    if (!trim($wr_name))
      alert("이름은 필히 입력하셔야 합니다.");
    $wr_password = sql_password($wr_password);
  }
 
  $wr_num = get_next_num($tmp_write_table);
  $wr_reply = "";
 
 $sql = "select count(*) as cnt from $tmp_write_table where wr_id='$xwr_id' ";
 $row = sql_fetch($sql);
 
 if($row[cnt]>0)
 {
   $sql = "update $tmp_write_table set
    ca_name='$xca_name',
    wr_subject='$xwr_subject',
    wr_content='$xwr_content',
    wr_link1='$xwr_link1',
    wr_1='$xwr_1',
    wr_2='$xwr_2',
    wr_4='$xwr_4',
    wr_5='$xwr_5',
    wr_6='$xwr_6',
    wr_11='$xwr_11',
    wr_tag='$xwr_tag',
    wr_local_1='$xwr_local_1',
    wr_local_2='$xwr_local_2'
    where wr_id='$xwr_id' limit 1";
 }
 else
 {
   $sql=" insert into $tmp_write_table set
   wr_num = '$wr_num',
    wr_reply = '$wr_reply',
    wr_comment = 0,
    ca_name='$xca_name',
    wr_option = '$html,$secret,$mail',
    wr_subject='$xwr_subject',
    wr_content='$xwr_content',
    wr_link1='$xwr_link1',
    wr_link2 = '$wr_link2',
    wr_link1_hit = 0,
    wr_link2_hit = 0,
    wr_trackback = '$wr_trackback',
    wr_hit = 0,
    wr_good = 0,
    wr_nogood = 0,
    mb_id = '$member[mb_id]',
    wr_password = '$wr_password',
    wr_name = '$wr_name',
    wr_email = '$wr_email',
    wr_homepage = '$wr_homepage',
    wr_datetime = '$g4[time_ymdhis]',
    wr_last = '$g4[time_ymdhis]',
    wr_ip = '$_SERVER[REMOTE_ADDR]',
    wr_1='$xwr_1',
    wr_2='$xwr_2',
    wr_4='$xwr_4',
    wr_5='$xwr_5',
    wr_6='$xwr_6',
    wr_11='$xwr_11',
    wr_tag='$xwr_tag',
    wr_local_1='$xwr_local_1',
    wr_local_2='$xwr_local_2' ";
   
    $wr_id = mysql_insert_id();
   
    // 부모 아이디에 UPDATE
    sql_query(" update $tmp_write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");
   
    // 새글 INSERT
    //sql_query(" insert into $g4[board_new_table] ( bo_table, wr_id, wr_parent, bn_datetime ) values ( '$bo_table', '$wr_id', '$wr_id', '$g4[time_ymdhis]' ) ");
    sql_query(" insert into $g4[board_new_table] ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '$xbo_table', '$wr_id', '$wr_id', '$g4[time_ymdhis]', '$member[mb_id]' ) ");
   
    // 게시글 1 증가
    sql_query("update $g4[board_table] set bo_count_write = bo_count_write + 1 where bo_table = '$xbo_table'");
  }
  // echo $sql ;
  sql_query($sql);

 

 

 

이 질문에 댓글 쓰기 :

답변 1

행여나 공백등의 문제는 아니었을런지... trim이라도 해보시는게 좋지 않을까요?

$xwr_local_1 = trim($xinfo[15]);

$xwr_local_2 = trim($xinfo[16]);

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

회원로그인

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