안녕하세요 유튜브 영상 관련 질문 드립니다.

안녕하세요 유튜브 영상 관련 질문 드립니다.

QA

안녕하세요 유튜브 영상 관련 질문 드립니다.

본문

안녕하세요

현제 제가 최신글을 통해서 메인 슬라이드를 만들고 있는데요

이미지를 올리게 되면 이미지가 나오게 하고 유튜브 주소를 넣게 되면 유튜브 영상이 자동으로 재생이 되게 하고 싶어서 이렇게 문의 드립니다.

현제 해당 게시판 DB테이블에 wr_movie_url 추가가 되어 있습니다.
글쓰기 시 유튜브 주소를 넣게 되면 리스트페이지에서는 섬네일 이미지가 나오게 되고 

view페이지로 들어가게 되면 유튜브 영상이 나오게 됩니다.

문제는 아래와 같이 하게 되면 이미지는정상적으로 나오는데 유튜브는 어떻게 넣어야 할지 잘 몰라서 이렇게 여줘 봅니다.

해당 게시판에 게시글 들어가보면 뷰페이지에 유튜브 영상이 나오는데 이게 iframe으로 되어 있는 것으로 보아 iframe으로 적용을 해야 하는지 의문 입니다.

전문가분들의 도움이 좀 필요 합니다.

제가 할 수 있는게 이게 한개인가봐요

더 공부를 해야 겠지만 만만치가 않아서요

고수님들의 조언 부탁 드립니다.

 


<?
     for ($i=0; $i<count($list); $i++) {
          if($list[$i][wr_thumb]){
               $thumb[src]=$list[$i][wr_thumb];
               $thumb[ori]=$thumb[src];
          }
          else{
               $thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], $bo_gallery_width, $bo_gallery_height, false, true);
          }
          $date=date("m-d",strtotime($list[$i]['wr_datetime']));
          $list[$i][content]=cut_str(strip_tags($list[$i][content]),150);
          if($thumb['src']){
               echo "<img src='$thumb[src]' class='img-fluid' style='width:100%;'>";
          }
          else{
               echo "<img src='$latest_skin_url/noimage.png' class='img-fluid' style='width:100%;'>";
          }    
?>
 

이 질문에 댓글 쓰기 :

답변 2

아래와 같이 iframe 으로 하셔야하구요..

일반적으로는 유튜브 코드만 저장을 합니다.

url 로 저장한 경우, explode 로 배열에 저장해서 처리했습니다.

예) https://www.youtube.com/watch?v=코드


if($list[$i]['wr_movie_url']) { 
  $movie_code = explode("watch?v=", $list[$i]['wr_movie_url']);
  echo '<iframe width="560" height="315" src="https://www.youtube.com/embed/'.$movie_code[1].'" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>';
}

안녕하세요 질문 하나 더 드려도 될까요
아래 코드에 보면
if($thumb['src']){
    echo "<img src='$thumb[src]' class='img-fluid' style='width:100%;'>";
}
위 부분은 이미지를 가져오는 것이고
if($list[$i]['wr_movie_url']) {
    $movie_code = explode("watch?v=", $list[$i]['wr_movie_url']);
    echo "<iframe width='100%' height='100%' style='background:#000; color:#fff' src='https://www.youtube.com/embed/$movie_code[1]?rel=0&amp;controls=0&amp;showinfo=0&autoplay=1&mute=1' frameborder='0' border=0 scrolling=no allowfullscreen></iframe>";

위 소스는 선생님이 작성 해주신 것인데요
위 처름 그냥 if로 하니 두개가 같이 나오더라구요
그래서 에디터를 통해서 이미지를 올리게 되면 이미만 나오고
이 부분에 영상을 올리게 되면 영상이 나오게 하고 싶습니다.
혹시 몰라서 쪽지로 사이트 주소 보내 드립니다.
죄송합니다. 너무 힘들게 해드리는 것 같아서요


if($thumb['src']){
     echo "<img src='$thumb[src]' class='img-fluid' style='width:100%;'>";
}
if($list[$i]['wr_movie_url']) {
     $movie_code = explode("watch?v=", $list[$i]['wr_movie_url']);
     echo "<iframe width='100%' height='100%' style='background:#000; color:#fff' src='https://www.youtube.com/embed/$movie_code[1]?rel=0&amp;controls=0&amp;showinfo=0&autoplay=1&mute=1' frameborder='0' border=0 scrolling=no allowfullscreen></iframe>";
}                        
else{
     echo "<img src='$latest_skin_url/noimage.png' class='img-fluid' style='width:100%;'>";
}


if($thumb['src']){
     echo "<img src='$thumb[src]' class='img-fluid' style='width:100%;'>";
} else 
if($list[$i]['wr_movie_url']) {
     $movie_code = explode("watch?v=", $list[$i]['wr_movie_url']);
     echo "<iframe width='100%' height='100%' style='background:#000; color:#fff' src='https://www.youtube.com/embed/$movie_code[1]?rel=0&amp;controls=0&amp;showinfo=0&autoplay=1&mute=1' frameborder='0' border=0 scrolling=no allowfullscreen></iframe>";
}                        
else{
     echo "<img src='$latest_skin_url/noimage.png' class='img-fluid' style='width:100%;'>";
}

유튜브의 썸네일 이미지주소는 아래와 같습니다.

 

https://img.youtube.com/vi/유튜브아이디/mqdefault.jpg

 

따라서 유튜브를 사용하면 이미지주소로 위의 경로를 쓰고

유튜브를 사용하지 않으면 이미지주소로 $thumb[src] 를 쓴다는 이프문을 걸어주시면 됩니다.

https://sir.kr/g5_skin/48340 의 list.skin.php 의 코드를 한번 살펴보세요.

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

회원로그인

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