::쇼핑몰제작, 홈페이지제작, 쇼핑몰창업, 소자본창업, 쇼핑몰디자인, NO.1 쇼핑몰솔루션 겟몰 GETMALL::
고객지원패치&업그레이드
겟몰 구버전(플러스, 프리미엄, 플래티넘)에서 Web2.0 넥스트 버전으로 업그레이드 하시려면 '쇼핑몰버전 업그레이드 신청'을 클릭하세요.
     
「상품정보제공 고시」에 따른 긴급 패치 데모!! 2013/01/29
안녕하세요!

겟몰입니다.



「상품정보제공 고시」에 따른 패치 데모 입니다.


 관련 자료 : http://www.ftc.go.kr/news/policy/competeView.jsp?news_no=1474&news_div_cd=2


 패치 데모 입니다.
 
 버그 발생시 1:1 문의로 신고 부탁 드립니다.



선행 패치 내용 (필수)

"쇼핑몰 게시판 에디터 추가 [ 1.5.0 버젼 이상] (2012/09/10)" 바로가기 ]

"쇼핑몰 상품 상세 정보 편집 에디터 변경 [ 1.5.0 버젼 이상]  (2012/08/23)"  [ 바로가기 ]



패치 안내

해당 패치는 1.5.0 버젼 이상에서 적용 가능 합니다.

디자인 또는 프로그램의 커스터마이징 된 경우 코드에 차이가 있을수 있습니다.

첨부파일 "20130129_patch.zip"을 다운 받으셔서 선행패치가 완료된 시점에서 패치 해 주시기 바랍니다.

첨부파일내 "www" 폴더 이하 파일은 선행패치 후 최상단 폴더로부터 기존 파일을 백업 후 적용하시고 아래 코드들을 추가 삽입 해주시면 됩니다.


데이터베이스 등록 안내

"20130129_patch.sql" 덤프파일을 [ http://쇼핑몰도메인/ej_sql/ ]로 접속하여 데이터베이스 테이블을 생성하셔야 합니다.

* http://쇼핑몰도메인/ej_sql/ 로 접속하여 솔루션이 사용중인 데이터베이스를 선택 합니다.
* "schema.sql"파일을 문서 편집기로 열고 데이터베이스를 선택된 상태에서 왼쪽 상단  버튼을 눌러 실행 하거나, 오른쪽 가운데 상단  눌러 "SQL 텍스트 파일의 위치"로 "schema.sql"파일을 업로드 오른쪽하단에 "실행"하시면 됩니다.


★ 직접 코드 적용 파일

/admin/product_register.add.php
/admin/design_eachpdetail.list.php
/front/productdetail.php
/front/productdetail_text.php
/templet/product/detail_U.php
/templet/product/detail_* ("detail_"로 시작하는 모든 템플릿 파일)












아래 페이지에서
 구문위
=================================================
 이 코드를 삽입해 주세요
=================================================
 구문아래





/


admin/product_register.add.php


 INCLUDE ("access.php");
=================================================
 include_once($Dir."lib/ext/product_func.php");
=================================================






 if($insert = mysql_query($sql,get_db_conn())) {
=================================================
   // 상품정보고시 저장
   $pridx = mysql_insert_id(get_db_conn());
   $ditems = array();
   foreach($_REQUEST['didx'] as $k=>$v){
    $item = array();
    $item['didx'] = $v;
    $item['dtitle'] = $_REQUEST['dtitle'][$k];
    $item['dcontent'] = $_REQUEST['dcontent'][$k];
    array_push($ditems,$item);
   }
   _editProductDetails($pridx,$ditems);

=================================================
 if(strlen($brandname)>0) { // 브랜드 관련 처리

















 delProductMultiImg("prdelete","",$prcode);
=================================================
 
 // 상품정보고지 삭제
  _deleteProductDetails($pridx);

=================================================

  if ($popup=="YES") {









if($update = mysql_query($sql,get_db_conn())) {
=================================================
   // 상품정보고지 수정
   $sql = "select pridx from tblproduct WHERE productcode = '".$prcode."'  limit 1";
   if(false !== $res = mysql_query($sql,get_db_conn())){
    $pridx = mysql_result($res,0,0);
    $ditems = array();
    foreach($_REQUEST['didx'] as $k=>$v){
     $item = array();
     $item['didx'] = $v;
     $item['dtitle'] = $_REQUEST['dtitle'][$k];
     $item['dcontent'] = $_REQUEST['dcontent'][$k];
     array_push($ditems,$item);
    }
    _editProductDetails($pridx,$ditems);
   }

=================================================
if(strlen($brandname)>0) { // 브랜드 관련 처리




















<script type="text/javascript" src="lib.js.php"></script>
=================================================
<style type="text/css">
 @import url("/css/common.css");
</style>

=================================================
<script>var LH = new LH_create();</script>









<TR>
 <TD colspan="4" background="images/table_con_line.gif"></TD>
</TR>

=================================================
   <TR>
    <TD class="table_cell"><img src="images/icon_point5.gif" width="8" height="11" border="0">상품정보고시</TD>
    <TD class="td_con1" colspan="3" style="padding:5px;">
     <div class="checkPoint" style=" margin-bottom:5px;">
      <ul style="list-style:disc">
       <li>항목명 또는 내용중 한부분이라도 내용이 없는 경우 해당 항목은 등록 처리 되지 않습니다.</li>
       <li>셀렉트 박스를 통한 템플릿은 기본 설정된 각 구분별 내용으로 필요시 수정이 가능합니다.</li>
       <li>템플릿 변경시 기존 등록 내용 부분은 초기화 되며 상품 정보 저장시 적용 됩니다.</li>
      </ul>
     </div>상품 구분 선택 :
     
     <select name="gosiTemplet">
      <option value="">템플릿 리스트 로딩중</option>
     </select>
     
     <style type="text/css">
      .tblStyle1{ border-left:1px solid #ccc; border-top:1px solid #ccc; width:98%}
      .tblStyle1 th{ background:#efefef; padding:3px; border-right:1px solid #ccc;  border-bottom:1px solid #ccc; width:160px}
      .tblStyle1 td{  padding:3px; border-right:1px solid #ccc; border-bottom:1px solid #ccc;}
      .dtitleInput{ width:300px;}

      .ditemTextarea{ width:98%; line-height:18px;}
     </style>
     
     <script language="javascript" type="text/javascript">
      function addGosiItem(el,itm){
       var str = '<tr>';
       str +=      '<th><input type="hidden" name="didx[]" value="" /><input type="text" name="dtitle[]" value="'+((itm && itm.title)?itm.title:'')+'" class="dtitleInput" /></th>';
       str +=          '<td><textarea name="dcontent[]" class="ditemTextarea"></textarea></td>';
       if(itm && itm.desc){
        str +=          '<td style="width:50px;" rowspan="2"><input type="button" value="항목 삭제" class="ditemDelBtn" /><br><input type="button" value="항목 추가" class="ditemAddBtn" /></td></tr>';
        str += '<tr><td colspan="2" style="padding-left:10px;">'+itm.desc+'</td></tr>';
       }else{
        str +=          '<td style="width:50px;"><input type="button" value="항목 삭제" class="ditemDelBtn" /><br><input type="button" value="항목 추가" class="ditemAddBtn" /></td></tr>';
       }
      
       if(el){
        $(el).parent().parent().after(str);
       }else{
        if($j('#detailTable').find('tr').length <1){
         $j('#detailTable').append('<tbody>'+str+'</tbody>');
        }else{
         $j('#detailTable').find('tr:last').after(str);
        }
       }
       
       if($j('#detailTable').css('display') == 'none') $j('#detailTable').css('display','');
       parent_resizeIframe('AddFrame');
      }
      
      function removeGosiItem(el){
       $j(el).parent().parent().remove();
       if($j('#detailTable').find('tr').length <1){
        $j('#detailTable').css('display','none');
       }
      }

      $j(function(){
       $j.post('/lib/ext/getbyjson.php',{'act':'getProductGosiTitles'},function(data){
        if(data.err != 'ok'){
         alert(data.err);
        }else{
         $j('select[name=gosiTemplet]').find('option').remove();
         $j('select[name=gosiTemplet]').append('<option value="">== 상품 구분 선택 ==</option>');
         $j.each(data.items,function(idx,itm){
          $j('select[name=gosiTemplet]').append('<option value="'+itm.idx+'">'+itm.title+'</option>');
         });
         $j('select[name=gosiTemplet]').append('<option value="-1">직접 입력</option>');
        }
       },'json');
       $j(document).on('change','select[name=gosiTemplet]',function(){
        var idx = $j(this).val();
        if(idx == '-1'){
         addGosiItem(null,null);
        }else{
         $j.post('/lib/ext/getbyjson.php',{'act':'getProductGosiItems','idx':idx}, function(data){
          if(data.err != 'ok'){
           alert(data.err);
          }else{
           $j('#detailTable').find('tr').remove();
           $j.each(data.items,function(idx,itm){
            addGosiItem(null,itm);
           });
          }
         },'json');
        }
       });

       $j(document).on('click','.ditemAddBtn',function(){
        addGosiItem(this,null);
       });

       $j(document).on('click','.ditemDelBtn',function(){
        removeGosiItem(this);
       });
      });
     </script>
     
     <?
      $detialItems = _getProductDetails($_data->pridx);
     ?>
     <table border="0" cellpadding="0" cellspacing="0" class="tblStyle1" id="detailTable" style="display:<?=(count($detialItems)>0)?'':'none'?>" style="margin-top:10px;">
      <?
       if(count($detialItems)>0){
        foreach($detialItems as $ditem){
      ?>
      <tr>
       <th style="width:200px;"><input type="hidden" name="didx[]" value="<?=$ditem['didx']?>" /><input type="text" name="dtitle[]" value="<?=$ditem['dtitle']?>" class="dtitleInput" /></th><td><textarea name="dcontent[]" class="ditemTextarea"><?=$ditem['dcontent']?></textarea></td><td style="width:50px;"><input type="button" value="이항목 삭제" class="ditemDelBtn" /><br><input type="button" value="아래에항목추가" class="ditemAddBtn" /></td>
      </tr>
      <?
        } // end foreach
       } // end if
      ?>
     </table>
    </TD>
   </TR>
   <TR>
    <TD colspan="4" background="images/table_con_line.gif"></TD>
   </TR>
=================================================
<tr>
 <TD class="table_cell"><img src="images/icon_point5.gif" width="8" height="11" border="0">사용자 정의 스펙</TD>





























































































































































/admin/design_eachpdetail.list.php



 [DETAIL] 아래
============================================================
<tr><td colspan=2 height=1 bgcolor=#dddddd></td></tr>
<tr>
 <td class=table_cell align=right style="padding-right:15">[PRODUCTINFOGOSI]</td>
 <td class=td_con1 style="padding-left:5;">
  상품정보고시 <FONT class=font_blue>정보 테이블의 색상등 스타일 변경은 css 폴더내 common.css 파일에서 productInfoGosi 클레스의 설정을 변경하시면 됩니다.)
 </td>
</tr>

============================================================



















/front/productdetail.php


 include_once($Dir."lib/shopdata.php"); 아래
============================================================
include_once($Dir."lib/ext/product_func.php");
include_once($Dir."lib/ext/member_func.php");

============================================================







<script type="text/javascript" src="lib.js.php"></script>
=================================================
<style type="text/css">
 @import url("/css/common.css");
</style>

=================================================
<script type="text/javascript" src="<?=$Dir?>lib/jquery-1.4.2.min.js"></script>












/front/productdetail_text.php


페이지 최하단
============================================================
// 상품정보고시
$ditems = _getProductDetails($_pdata->pridx);
$gositable = '';
if(_array($ditems) && count($ditems) > 0){
 $gositable = '<table border="0" cellpadding="0" cellspacing="0" class="productInfoGosi">';
 $gositable .= '<caption>전자상거래소비자보호법 시행규칙에 따른 상품정보제공 고시</caption>';
 foreach($ditems as $ditem){
  $gositable .= '<tr><th>'.$ditem['dtitle'].' </th>';
  $gositable .= '<td>'.nl2br($ditem['dcontent']).' </td></tr>';
 }
 $gositable .= '</table>';
}
============================================================
?>






















/templet/product/detail_U.php

개별디자인 사용자 패치 입니다

$replace=array(......);
============================================================
// 상품정보고지
array_push($pattern,'(\[PRODUCTINFOGOSI\])');
array_push($replace,$gositable);

============================================================
$body=preg_replace($pattern,$replace,$body);












/templet/product/detail_* ("detail_"로 시작하는 모든 템플릿 파일)


출력하고자하는 디자인 템플릿에 적용 하시면 됩니다.

============================================================
<tr>
 <td>
  <?
   // 상품정보고시
   $ditems = _getProductDetails($_pdata->pridx);
   if(_array($ditems) && count($ditems) > 0){
  ?>
  <table border="0" cellpadding="0" cellspacing="0" class="productInfoGosi">
   <caption>전자상거래소비자보호법 시행규칙에 따른 상품정보제공 고시</caption>
   <?
    foreach($ditems as $ditem){
   ?>
   <tr>
    <th><?=$ditem['dtitle']?></th>
    <td><?=nl2br($ditem['dcontent'])?></td>
   </tr>
   <?
    }// end foreach
   ?>
  </table>
  <?
   } // end if
  ?>
 </td>
</tr>
============================================================










































20130129_patch.zip (10 KB)
 
right_menu_title.gif
이벤트
솔루션 구입문의
솔루션 운영문의
상품 Q&A
팁앤테크
창업가이드
라이센스 변경신청
공지사항
패치&업그레이드
storebook
callistore
체험판신청
사용자체험 관리자체험
쇼핑몰솔루션 신청
체험판신청
사용자체험 입점사 미니샵체험
관리자체험 입점사 관리자체험
쇼핑몰솔루션 신청
겟몰소개 고객센터 개인정보보호방침 이용약관 제휴문의 리셀러신청 개인결제상품 솔루션몰 세금계산서신청 페이스북 트위터 미투데이 겟몰rss 관리자에게메일보내기