일반페이지에서 thumbnail 함수를 이용한 썸네일 생성이 안됨
본문
일반페이지에서 에디터로 첨부한 이미지를 thumbnail 함수를 이용해서 썸네일을 만들려고 하는데 썸네일 생성이 안됩니다. ('원본파일없음'/소스파일경로 뜸)
원본 이미지가 너무 커서 썸네일을 만드려고 한 건데...왜 안될까요? 원본 이미지 있는 건 확인했습니다.
<?php
$sql = "SELECT * FROM g5_write_게시판 이름";
$result = sql_query($sql);
while ($row = sql_fetch_array($result)) {
$wr_id = $row['wr_id'];
$wr_subject = $row['wr_subject'];
$wr_1 = $row['wr_1'];
// wr_1 이미지 추출
preg_match('/<img[^>]+src=["\']([^"\']+)["\']/', $wr_1, $matches);
$img_path = isset($matches[1]) ? $matches[1] : null;
$img_name = basename($img_path);
$dir_path = dirname($img_path);
if ($img_path) {
$thumb_path = thumbnail($img_name, $dir_path, G5_DATA_PATH . '/썸네일 저장 폴더', 856, 671, false);
$thumb_url = G5_DATA_URL . '/썸네일 저장 폴더/' . $thumb_path;
} else {
$thumb_url = G5_URL . '/images/no_img.jpg';
}
?>
<a href="<?php echo G5_URL.'/projectView.php?wr_id='.$wr_id; ?>" class="project">
<div class="img-wrap">
<img src="<?php echo $thumb_url; ?>" alt="<?php echo $wr_subject; ?>" loading="lazy" />
</div>
<div class="title-wrap">
<h3><?php echo conv_content(preg_replace("@<.*?>@","", $wr_subject),0);?></h3>
</div>
</a>
<?php } ?>
답변 5
최상단에 썸네일 lib 불러와져있나요?
include_once(G5_LIB_PATH.'/thumbnail.lib.php');
while 바로 밑에
$thumb = get_list_thumbnail(게시판이름, $row['wr_id'], 270, 270, false, true);
print_r2($thumb);
로 확인해 보세요.
이상하네요. 혹시 테이블 명이 잘못 들어간거 아닐까요?
/lib/thumbnail.lib.php 파일
function get_list_thumbnail 함수에서 $bo_table, $wr_id 값이 재대로 받아와 지는지 확인해 볼수 있을까요?
Array
(
[src] =>
[ori] =>
[alt] =>
)
값을 가져오는거 보면 해당 함수는 정상적으로 호출한거 같은데....
재대로된 인수를 못 받은게 아닌가 의심됩니다.
1. /lib/thumbnail.lib.php 파일여시고
2. function get_list_thumbnail 함수를 찾으시고 나서
3. $edt = false; 밑에
echo "info : $bo_table : $wr_id ";
요거 한줄 넣어보세요.
4. 그리고 화면에 찍히는 info 정보가 나오는지 올려봐주세요.
제가 자주 싸이트에 접속하지를 않아서 답변 주시면 볼때 다시 답변 드리겠습니다.
음 그럼 정상적으로 함수호출은 되고 있는거 같습니다.
그럼 해당 함수안에서 뭔가가 걸려서 재대로 값을 안 가져오는거 같네요...
카톡이나 전화번호 쪽지로 주세요.
해당 주소를 보고 처리해야 할거 같습니다.