영카트4를 이전할때 상품 이미지가 안넘어올 경우 > 영카트5 팁자료실

영카트5 팁자료실

영카트4를 이전할때 상품 이미지가 안넘어올 경우 정보

영카트4를 이전할때 상품 이미지가 안넘어올 경우

본문

영카트4를 영카트5로 이전할때 yc4_import.php 로 데이타 이전후 상품 이미지가 넘어오지 않는 경우
영카트4에서 목록 이미지는 있지만, 중간 그리고 큰 상품 이미지가 없는경우에 사용하세요.

상품 이미지를 복제 후 디비 상품데이타에 상품이미지 정보를 업데이트 합니다.


1. 영카트5 / yc4_import_file_run.php  생성

<?php
include_once('./_common.php');
include_once(G5_LIB_PATH.'/connect.lib.php');
include_once(G5_LIB_PATH.'/outlogin.lib.php');

$g5['title'] = '영카트4 DB 데이터 이전';
include_once(G5_PATH.'/head.sub.php');

if($is_admin != 'super')
    alert('최고관리자로 로그인 후 실행해 주십시오.', G5_URL);
?>

<style>
#g4_import p {padding:0 0 10px;line-height:1.8em}
#g4_import_frm {margin:20px 0 30px;padding:30px 0;border:1px solid #e9e9e9;background:#f5f8f9;text-align:center}
#g4_import_frm .frm_input {background-color:#fff !important}
#g4_import_frm .btn_submit {padding:0 10px;height:24px}
</style>

<!-- 상단 시작 { -->
<div id="hd">
    <h1 id="hd_h1"><?php echo $g5['title'] ?></h1>

    <div id="skip_to_container"><a href="#container">본문 바로가기</a></div>

    <div id="hd_wrapper">

        <div id="logo">
            <a href="<?php echo G5_URL ?>"><img src="<?php echo G5_IMG_URL ?>/logo.jpg" alt="<?php echo $config['cf_title']; ?>"></a>
        </div>

        <ul id="tnb">
            <?php if ($is_member) {  ?>
            <?php if ($is_admin) {  ?>
            <li><a href="<?php echo G5_ADMIN_URL ?>"><b>관리자</b></a></li>
            <?php }  ?>
            <li><a href="<?php echo G5_BBS_URL ?>/member_confirm.php?url=<?php echo G5_BBS_URL ?>/register_form.php">정보수정</a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/logout.php">로그아웃</a></li>
            <?php } else {  ?>
            <li><a href="<?php echo G5_BBS_URL ?>/register.php">회원가입</a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/login.php"><b>로그인</b></a></li>
            <?php }  ?>
            <li><a href="<?php echo G5_BBS_URL ?>/qalist.php">1:1문의</a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/current_connect.php">접속자 <?php echo connect(); // 현재 접속자수  ?></a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/new.php">새글</a></li>
        </ul>
    </div>

    <hr>
</div>
<!-- } 상단 끝 -->

<hr>

<!-- 콘텐츠 시작 { -->
<div id="wrapper">
    <div id="aside">
        <?php // echo outlogin('basic'); // 외부 로그인  ?>
    </div>
    <div id="container">
        <?php if ((!$bo_table || $w == 's' ) && !defined("_INDEX_")) { ?><div id="container_title"><?php echo $g5['title'] ?></div><br><br><?php } ?>

        <div id="g4_import">
            <p>
                이 프로그램은 영카트5 이전후 상품 이미지 복사가 덜 된경우에 실행합니다.
            </p>
            <p>프로그램을 실행하시려면 영카트4의 config.php 파일 경로를 입력 후 확인을 클릭해 주십시오.</p>

            <form name="fimport" method="post" action="./yc4_import_file_run.php" onsubmit="return fimport_submit(this);">
            <div id="g4_import_frm">
                <label for="file_path">config.php 파일 경로</label>
                <input type="text" name="file_path" id="file_path" required class="frm_input required">
                <input type="submit" value="확인" class="btn_submit">
            </div>
            </form>

            <p>
                경로는 영카트5 설치 루트를 기준으로 영카트4의 config.php 파일의 상대경로입니다.<br>
                예를 들어 영카트4를 웹루트에 설치하셨고 영카트5를 yc5라는 하위 폴더에 설치하셨다면 입력하실 경로는 ../config.php 입니다.
            </p>

        </div>

        <script>
        function fimport_submit(f)
        {
            return confirm('영카트4의 상품 이미지를 이전하시겠습니까?');
        }
        </script>

    </div>
</div>

<!-- } 콘텐츠 끝 -->

<script>
$(function() {
    // 폰트 리사이즈 쿠키있으면 실행
    font_resize("container", get_cookie("ck_font_resize_rmv_class"), get_cookie("ck_font_resize_add_class"));
});
</script>

<?php
include_once(G5_PATH.'/tail.sub.php');
?>



2. 영카트5 / yc4_import_file_run.php  생성

<?php
include_once('./_common.php');

ob_end_clean();

include_once(G5_LIB_PATH.'/connect.lib.php');
include_once(G5_LIB_PATH.'/outlogin.lib.php');

set_time_limit ( 0 );
ini_set('memory_limit', '100M');

$g5['title'] = '영카트4 DB 데이터 이전';
include_once(G5_PATH.'/head.sub.php');

echo '<link rel="stylesheet" href="'.G5_URL.'/g4_import.css">';

if(empty($_POST))
    alert('올바른 방법으로 이용해 주십시오.', G5_URL);

if($is_admin != 'super')
    alert('최고관리자로 로그인 후 실행해 주십시오.', G5_URL);

$g4_config_file = trim($_POST['file_path']);

if(!$g4_config_file)
    alert('config.php 파일의 경로를 입력해 주십시오.');

$g4_config_file = preg_replace('#/config.php$#i', '', $g4_config_file).'/config.php';

if(!is_file($g4_config_file))
    alert('입력하신 경로에 config.php 파일이 존재하지 않습니다.');

$shop_config_file = str_replace('config.php', 'shop.config.php', $g4_config_file);

if(!is_file($shop_config_file))
    alert('입력하신 경로에 shop.config.php 파일이 존재하지 않습니다.\\nshop.config.php 파일은 config.php 파일과 동일한 위치에 있어야 합니다.');

$item_img_path = str_replace('config.php', 'data/item', $g4_config_file);

if(!file_exists($item_img_path))
    alert('상품이미지 폴더를 확인할 수 없습니다. 상품이미지 폴더의 상대경로가 '.$item_img_path.' 이 아니라면\\nyc4_import_run.php 파일에서 $item_img_path 의 값을 수정하신 후 실행해 주십시오.');

$is_euckr = false;
?>
<script>
// 새로고침 방지
function noRefresh()
{
    /* CTRL + N키 막음. */
    if ((event.keyCode == 78) && (event.ctrlKey == true))
    {
        event.keyCode = 0;
        return false;
    }
    /* F5 번키 막음. */
    if(event.keyCode == 116)
    {
        event.keyCode = 0;
        return false;
    }
}

document.onkeydown = noRefresh ;
</script>

<style>
#g4_import_run {}
#g4_import_run ol {margin: 0;padding: 0 0 0 25px;border: 1px solid #E9E9E9;border-bottom: 0;background: #f5f8f9;list-style:none;zoom:1}
#g4_import_run li {padding:7px 10px;border-bottom:1px solid #e9e9e9}
#g4_import_run #run_msg {padding:30px 0;text-align:center}
</style>

<!-- 상단 시작 { -->
<div id="hd">
    <h1 id="hd_h1"><?php echo $g5['title'] ?></h1>

    <div id="skip_to_container"><a href="#container">본문 바로가기</a></div>

    <div id="hd_wrapper">

        <div id="logo">
            <a href="<?php echo G5_URL ?>"><img src="<?php echo G5_IMG_URL ?>/logo.jpg" alt="<?php echo $config['cf_title']; ?>"></a>
        </div>

        <ul id="tnb">
            <?php if ($is_member) {  ?>
            <?php if ($is_admin) {  ?>
            <li><a href="<?php echo G5_ADMIN_URL ?>"><b>관리자</b></a></li>
            <?php }  ?>
            <li><a href="<?php echo G5_BBS_URL ?>/member_confirm.php?url=<?php echo G5_BBS_URL ?>/register_form.php">정보수정</a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/logout.php">로그아웃</a></li>
            <?php } else {  ?>
            <li><a href="<?php echo G5_BBS_URL ?>/register.php">회원가입</a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/login.php"><b>로그인</b></a></li>
            <?php }  ?>
            <li><a href="<?php echo G5_BBS_URL ?>/qalist.php">1:1문의</a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/current_connect.php">접속자 <?php echo connect(); // 현재 접속자수  ?></a></li>
            <li><a href="<?php echo G5_BBS_URL ?>/new.php">새글</a></li>
        </ul>
    </div>

    <hr>
</div>
<!-- } 상단 끝 -->

<hr>

<!-- 콘텐츠 시작 { -->
<div id="wrapper">
    <div id="aside">
        <?php // echo outlogin('basic'); // 외부 로그인  ?>
    </div>
    <div id="container">
        <?php if ((!$bo_table || $w == 's' ) && !defined("_INDEX_")) { ?><div id="container_title"><?php echo $g5['title'] ?></div><br><br><?php } ?>

        <div id="g4_import_run">
            <ol>
        <?php
        flush();

        // yc4의 confing.php, shop.config.php
        require($g4_config_file);
        require($shop_config_file);

        if(preg_replace('/[^a-z]/', '', strtolower($g4['charset'])) == 'euckr')
            $is_euckr = true;

        // item 이미지 복사
        $sql = " select * from {$g4['yc4_item_table']} ";
        $result = sql_query($sql);
        for($i=0; $row=sql_fetch_array($result); $i++) {
            if($is_euckr)
                $row = array_map('iconv_utf8', $row);

            $comma = '';
            $sql_common = '';

            // 상품이미지처리
            $idx = 1;
            for($k=1; $k<=5; $k++) {
                $item_img_file = $item_img_path.'/'.$row['it_id'].'_l'.$k;
                if(is_file($item_img_file)) {
                    $size = @getimagesize($item_img_file);

                    if($size[2] < 1 || $size[2] > 16)
                        continue;

                    switch($size[2]) {
                        case 1:
                            $ext = 'gif';
                            break;
                        case 2:
                            $ext = 'jpg';
                            break;
                        case 3:
                            $ext = 'png';
                            break;
                        case 6:
                            $ext = 'bmp';
                            break;
                        default:
                            continue;
                            break;
                    }

                    // 이미지복사
                    @mkdir(G5_DATA_PATH.'/item/'.$row['it_id'], G5_DIR_PERMISSION);
                    @chmod(G5_DATA_PATH.'/item/'.$row['it_id'], G5_DIR_PERMISSION);

                    if(copy($item_img_file, G5_DATA_PATH.'/item/'.$row['it_id'].'/'.$row['it_id'].'_l'.$idx.'.'.$ext)) {
                        @chmod(G5_DATA_PATH.'/item/'.$row['it_id'].'/'.$row['it_id'].'_l'.$idx.'.'.$ext, G5_FILE_PERMISSION);
                        $sql_common .= $comma . " it_img{$idx} = '".$row['it_id'].'/'.$row['it_id'].'_l'.$idx.'.'.$ext."' ";
                        $idx++;
                    }
//echo "item_img_file = ". $item_img_file ."<br>";
                } else {
if ($k == 1) {
$item_img_file_s = $item_img_path.'/'.$row['it_id'].'_s';
//echo "item_img_file_s1 = ". $item_img_file_s ."<br>";
if (is_file($item_img_file_s)) {
echo "item_img_file_s2 = ". $item_img_file_s ."<br>";
$size = @getimagesize($item_img_file_s);

if($size[2] < 1 || $size[2] > 16)
continue;

switch($size[2]) {
case 1:
$ext = 'gif';
break;
case 2:
$ext = 'jpg';
break;
case 3:
$ext = 'png';
break;
case 6:
$ext = 'bmp';
break;
default:
continue;
break;
}

// 이미지복사
@mkdir(G5_DATA_PATH.'/item/'.$row['it_id'], G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/item/'.$row['it_id'], G5_DIR_PERMISSION);

if(copy($item_img_file_s, G5_DATA_PATH.'/item/'.$row['it_id'].'/'.$row['it_id'].'_s.'.$ext)) {
@chmod(G5_DATA_PATH.'/item/'.$row['it_id'].'/'.$row['it_id'].'_s.'.$ext, G5_FILE_PERMISSION);
$sql_common .= $comma . " it_img{$idx} = '".$row['it_id'].'/'.$row['it_id'].'_s.'.$ext."' ";
}
}
}
}
            }

echo " update {$g5['g5_shop_item_table']} SET $sql_common where it_id = {$row['it_id']} <br>";

        }
        echo '<li>item 이미지 복사</li>'.PHP_EOL;

        echo '</ol>'.PHP_EOL;

        echo '<div id="run_msg">영카트4 DB 상품 이미지 이전 완료</div>'.PHP_EOL;
        ?>
        <div id="run_msg"><a href="yc4_import_file.php">다시 복사</a></div>
        </div>

    </div>
</div>

<!-- } 콘텐츠 끝 -->

<script>
$(function() {
    // 폰트 리사이즈 쿠키있으면 실행
    font_resize("container", get_cookie("ck_font_resize_rmv_class"), get_cookie("ck_font_resize_add_class"));
});
</script>

<?php
include_once(G5_PATH.'/tail.sub.php');
?>



*^^*  추천은 고래도 춤추게 합니다  *^^*
추천
2

댓글 2개

전체 391
영카트5 팁자료실 내용 검색

회원로그인

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