게시글 가져오기 질문좀요

게시글 가져오기 질문좀요

QA

게시글 가져오기 질문좀요

본문

게시글을 가져오는데 2개씩 가져와버립니다.

어디 문제가있을까요?ㅠㅠ

 

소스코드


<?php
include_once('./_common.php');
global $g5, $member;
$url = @$_POST['url'] ?: @$_GET['url'];
$sel = @$_POST['sel'] ?: @$_GET['sel'];
$sel12 = @$_POST['sel12'] ?: @$_GET['sel12'];
$sel2 = @$_POST['sel2'] ?: @$_GET['sel2'];
$sel22 = @$_POST['sel22'] ?: @$_GET['sel22'];
$sel23 = @$_POST['sel23'] ?: @$_GET['sel23'];
$target_table = @$_POST['bo_table'] ?: @$_GET['bo_table'];
include_once('./S_hquery.php');
$result = array();
$list = hquery_getList($url, $sel); //목록 구해오기
foreach($list as $row) {
  global $g5, $member;
   preg_match_all("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]\d/i", $row['content_url'], $content_url);
  //  $sel2 = "div#container";
   foreach ($content_url as $a) {
      for ($i=0;$i<count($a);$i++){
        //echo $a[$i]."<br>";
            $url2 = str_replace("amp;","",$a[$i]);
            if($url2 != ''){
            $doc2 = hQuery::fromUrl(
                $url2
              , [
                    'Accept'     => $config['accept_html'],
                    'User-Agent' => $config['user_agent'],
                ]
            );
              $elements2 = $doc2->find($sel2);
              // $parts = parse_url($url);
              // parse_str($parts['query'], $query);
              // $result['wr_id'] = $query['wr_id'];
              foreach($elements2 as $pos => $el2) {
              $result2['wr_subject'] = $el2 -> find($sel22); //wr_subject값 구하기
              $result2['wr_content'] = $el2 -> find($sel23); //wr_name값 구하기
              }
              //  hquery_getContent($a[$i]);
              //   board_write($target_table, $contents);
               $write_table = $g5['write_prefix'].$bo_table;
               $wr_num = get_next_num($write_table);
               $wr_reply = '';
               $ca_name = "";
               $wr_option = "html1";
               $secret = "";
               $mail = "";
               $wr_subject = $result2['wr_subject'];
               $wr_content = $result2['wr_content'];
               $wr_link1 = "";
               $wr_link2 = "";
               $mb_id = "admin";
               $wr_name = "관리자";
               $wr_email = "";
               $sql = " insert into $write_table
                           set wr_num = '$wr_num',
                                wr_reply = '$wr_reply',
                                wr_comment = 0,
                                ca_name = '$ca_name',
                                wr_option = '$wr_option',
                                wr_subject = '$wr_subject',
                                wr_content = '$wr_content',
                                wr_link1 = '',
                                wr_link2 = '',
                                wr_link1_hit = 0,
                                wr_link2_hit = 0,
                                wr_hit = 0,
                                wr_good = 0,
                                wr_nogood = 0,
                                mb_id = '$mb_id',
                                wr_password = '',
                                wr_name = '$wr_name',
                                wr_email = '$wr_email',
                                wr_homepage = '$url2',
                                wr_datetime = '" . G5_TIME_YMDHIS . "',
                                wr_last = '" . G5_TIME_YMDHIS . "',
                                wr_ip = '0.0.0.0',
                                wr_1 = '',
                                wr_2 = '',
                                wr_3 = '',
                                wr_4 = '',
                                wr_5 = '',
                                wr_6 = '',
                                wr_7 = '',
                                wr_8 = '',
                                wr_9 = '',
                                wr_10 = '' ";
               sql_query($sql);
               $wr_id = sql_insert_id();
               // 부모 아이디에 UPDATE
               sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");
               // 새글 INSERT
               sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '" . G5_TIME_YMDHIS . "', '$mb_id' ) ");
               // 게시글 1 증가
               sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");
        //    sleep(1);
          }
    }
  }
}
goto_url('./scrap.php');

이 질문에 댓글 쓰기 :

답변 2

foreach($list as $row) {
  global $g5, $member;
   preg_match_all("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]\d/i", $row['content_url'], $content_url);
  //  $sel2 = "div#container";
   foreach ($content_url as $a) {
      for ($i=0;$i<count($a);$i++){

위 코드에서 루프를 검사하셔야합니다.

기존에 등록된 게시물이나 연결된 다른 테이블의 데이터가 중복이 있을때 두개씩 보일수가 있으니 확인해 보셔야 할듯 합니다.

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

회원로그인

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