좌측 상단 상품기본이미지를 첨부가 아닌 링크로 처리하고 싶습니다.

좌측 상단 상품기본이미지를 첨부가 아닌 링크로 처리하고 싶습니다.

QA

좌측 상단 상품기본이미지를 첨부가 아닌 링크로 처리하고 싶습니다.

본문

3717489107_1532343677.8318.jpg

 

에서 초록색 바구니의 사진을 등록을 하기 위해서는 관리자 화면에서

 

이미지 1 ~ 6번까지의 사진을 등록해야 하더라고요.

DB에서도 "화일명.jpg" 형식으로 저장됩니다.

 

그런데 저는 다른 사이트에서 링크해서 적용하고 싶습니다.

즉, DB에 "htt://sir.kr/화일명.jpg" 형식으로 저장해서 불러와서

사진과 같이 보여주고 싶습니다.

 

방법이 있을까요?

이 질문에 댓글 쓰기 :

답변 5

당연히 가능하고 그리 어렵지는 않으나 소스를 약간 손봐줘야 할듯 싶네요.

 

여러가지 방법이 있겠지만 제가 생각하는 방법은

 

관리페이지에서 업로드 말고 url입력부분을 넣어주고

만약 url이 입력됬다면 업로드를 안하고 파일명 저장 컬럼에 url을 입력해두고(DB수정은하지않기위해)

표기 부분에서 파일명 값이 url일경우(정규식을써도되고 http가있는지 체크해도되고) url의 이미지 출력하고 아닐경우엔 파일명이 있으면 파일이 실제 존제하는지 확인해서 있으면 업로드된 파일출력

 

이런식으로 처리하면 큰 수정없이 가능하리라 생각하기는 하는데...

 

혹시 직접 작업하신게 아니고 제작을 맡기신거라면 손봐달라고 문의 해보시는것도 좋을듯..

 

관리페이지 부분하고 표기부분 소스 올려주시면 수정할 소스코드 적어드릴 분도 계실듯

이미지 업로드 대신 링크를 사용하고 상품보기 상세페이지에 표시하는 것은 간단합니다만

리스트에 상품이미지를 출력해야 하고 관리자 페이지 상품관리 리스트에도 이미지를 표시해야 하니

여러 곳을 수정해야 합니다

 

1. 상품등록페이지에서 하단 여분필드1에 이미지 주소를 입력합니다

2, 상세페이지에서 for구문 전체(apms_get_item_thumbnail 함수를 호출하는 부분 등 아미나 소스부분 ) 삭제 후 그자리에 이미지출력만 아래처럼 시켜주면 됩니다

(실력이 된다면 외부이미지를 썸네일로 저장해서 사용하는 방법도 있겠습니다만)

echo "<img src='{$it['it_1']}' width='500'>";

3. 리스트에서 이미지 출력은??

4. 메인 페이지 최신상품, 추천상품 등의 이미지 출력은??

 

 

 

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

// 썸네일 만들기
function apms_get_item_thumbnail($img, $width, $height=0, $id='') {

    $file = G5_DATA_PATH.'/item/'.$img;

echo $img;

 if(is_file($file))
        $size = @getimagesize($file);

    if($size[2] < 1 || $size[2] > 3)
        return;

 if($width > 0) {
  $img_width = $size[0];
  $img_height = $size[1];
  $filename = basename($file);
  $filepath = dirname($file);

  $thumb = thumbnail($filename, $filepath, $filepath, $width, $height, false, true);


  if($thumb) {
   //echo $file_url = str_replace(G5_PATH, G5_URL, $filepath.'/'.$thumb);
   $file_url = $img;
   $str = '<img src="'.$file_url.'"';
   if($id)
    $str .= ' id="'.$id.'"';
   $str .= ' alt="">';
  } else {
   return;
  }
 } else {
       $file_url = G5_DATA_URL.'/item/'.$img;
 }

    $str = '<img src="'.$file_url.'"';
 if($id)
  $str .= ' id="'.$id.'"';
     $str .= ' alt="">';

    return $str;
}

 

 

 

echo $img; 결과 값은 1532331029/23.jpg 으로 나와요

1532331029/23.jpg1532331029/23.jpg  (  "23.jpg" 화일을 두번넣었습니다. 1532331029는 상품코드이예요)

영카트 기본이신가요? 아니면 테마나 다른분이 만드신것인가요?
올리신 저 한부분만가지고는 해결이 어려울꺼 같아요 ^^;
올리신 부분은 아마도 작은이미지(썸네일)을 만들고, 반환하는 곳인거 같네요.
저 함수가 불려오는곳 도 필요하고 실제 표기되는 페이지도 필요하고
관리페이지의 파일업로드하는 부분도 필요해요 ^^
총 3군데를 수정해야 할꺼 같은데~

일괄등록이라 입력부분은 필요하지 않을 듯합니다.

기존의 이미지 입력도 그대로 사용해야하니까요.

그럼 DB상세서는

 

예로

http://sir.kr/image/test.jpg 또는 2145164518/test.jpg 두개 타입으로 저장이 되겠지요.

기존는 그대로 두고  경로로 잡힌 것 즉 균이님이 말씀하신 것 같이 앞자리 4자리를 짤라서

http 이면 추가 경로를 붙이지 않고 바로 처리하는 것으로 해야 할 것 같습니다.

프로그램 한지가 오래돼서 잘 안돼지만 열심히 고민해서 해보도록 하겠습니다.

 

모두 감사합니다.

 

 

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

회원로그인

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