테스트 사이트 - 개발 중인 베타 버전입니다

게시글 전체에 sql 수정·적용하기? 채택완료

one9601 2년 전 조회 1,216

안녕하세요.

 

저는 유튜브/비메오 등 영상 업로드 게시판을 제작 하였는데요.

비메오의 경우 아래와 같은 함수를 통하여 썸네일 이미지를 가져 왔습니다.

 

function get_vimeoThumb($id) {

  $apiurl = "http://vimeo.com/api/v2/video/".$id.".json";

  $curlsession = curl_init ();

  curl_setopt ($curlsession, CURLOPT_URL, $apiurl);

  curl_setopt ($curlsession, CURLOPT_POST, 0);

  curl_setopt ($curlsession, CURLOPT_RETURNTRANSFER, 1);

  $response = curl_exec ($curlsession);

  $JSONreturns = json_decode($response);

  return  $JSONreturns[0]->thumbnail_large;

}

 

$videoId = $list[$i]['wr_9'];

$thumb_Url = get_vimeoThumb($videoId);

$img_content = "";

 

 

모두 제작하여 보니 list.php에서 위와 같이 할 경우 로딩속도가 엄청 느리다는걸 깨닳았습니다.

 

하여 write_update.skin.php에서 비메오 썸네일 주소를 저장하도록 변경 하였는데요!

문제는 이미 업로드한 게시글들이 많아서.. 이를 하나하나 수정 눌러서 작성완료를 눌러줘야 하는건지

아니면 다른 방법이 있는지 여쭙고자합니다 ㅠㅠ

 

write_update.skin.php 내용입니다

 

if($wr_9){

 

  function get_vimeoThumb($id) {

    $apiurl = "http://vimeo.com/api/v2/video/".$id.".json";

    $curlsession = curl_init ();

    curl_setopt ($curlsession, CURLOPT_URL, $apiurl);

    curl_setopt ($curlsession, CURLOPT_POST, 0);

    curl_setopt ($curlsession, CURLOPT_RETURNTRANSFER, 1);

    $response = curl_exec ($curlsession);

 

    $JSONreturns = json_decode($response);

    return  $JSONreturns[0]->thumbnail_large;

  }

 

  $wr_8 = get_vimeoThumb($wr_9);

}

 

$sql = " update $write_table set

wr_8 = '$wr_8'

where wr_id = '$wr_id' ";

    sql_query($sql);

?>

 

 

답변 감사합니다!!

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
2년 전

통상적으로 다음과 같은 방법이 있습니다.

 

1. list.php 에서 선택적 로딩

썸네일 주소가 저장되어 있으면 그대로 보여주고 없을 경우 get_vimeoThumb($id) 로딩

각 게시물당 최초 1회만 딜레이 발생

 

2. DB 전체 조회후 일괄 함수처리

1회성 전체 게시물 수행용 스크립트를 만들어 처리

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인