좌측 상단 상품기본이미지를 첨부가 아닌 링크로 처리하고 싶습니다.
본문
에서 초록색 바구니의 사진을 등록을 하기 위해서는 관리자 화면에서
이미지 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는 상품코드이예요)
일괄등록이라 입력부분은 필요하지 않을 듯합니다.
기존의 이미지 입력도 그대로 사용해야하니까요.
그럼 DB상세서는
예로
http://sir.kr/image/test.jpg 또는 2145164518/test.jpg 두개 타입으로 저장이 되겠지요.
기존는 그대로 두고 경로로 잡힌 것 즉 균이님이 말씀하신 것 같이 앞자리 4자리를 짤라서
http 이면 추가 경로를 붙이지 않고 바로 처리하는 것으로 해야 할 것 같습니다.
프로그램 한지가 오래돼서 잘 안돼지만 열심히 고민해서 해보도록 하겠습니다.
모두 감사합니다.
안녕하세요.
저도 내린님이 원하시는 기능을 구현해보고 싶어 열심히 검색 중인데요...
아직 방법을 찾지 못했네요.. ㅜㅜ
내린님 어떻게 방법을 찾으셨나요?