2017-11-25 1 views
1

SQL 테이블에서 비디오 데이터를 나열하고 있습니다. 그쪽 테이블에부트 스트랩 모달 박스에서 youtube 비디오 열기

필드 : - sidebar_video_id (자동 증가) - sidebar_video_nev - sidebar_video_link (전체 URL) - 내가 클릭하면 sidebar_video_v_id (의 URL의 끝에에서 동영상 ID)

은 내가 원하는 무엇이며, 각 비디오에서 부트 스트랩 모달 상자에서 열리고 재생됩니다. 이제는 상자가 열리지 만 비어 있으면 콘솔 에로가 생기지 않습니다.

<?php 
$get_videos = mysqli_query($kapcs, "SELECT * FROM sidebar_video"); 
if(mysqli_num_rows($get_videos) > 0) 
{ 
    while($vid = mysqli_fetch_assoc($get_videos)) 
    { 
     echo '<div class="sidebar_youtube_box">'; 
     echo '<a href="#" id="'.$vid['sidebar_video_v_id'].'" data-url="'.$vid['sidebar_video_link'].'" class="open_youtube_modal" title="'.$vid['sidebar_video_nev'].'"><img src="http://img.youtube.com/vi/'.$vid['sidebar_video_v_id'].'/hqdefault.jpg" class="img-responsive"></a>'; 
     echo '</div>'; 
    } 
} 
?> 


<div class="modal fade" id="videoModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 
    <div class="modal-dialog"> 
    <div class="modal-content"> 
     <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Bezárás</span></button> 
     <h4 class="modal-title" id="myModalLabel">Videó megtekintése</h4> 
     </div> 
     <div class="modal-body" id="video_modal_body"> 

     </div> 
    </div> 
    </div> 
</div> 

$('.open_youtube_modal').click(function(e) { 
     e.preventDefault(); 
     var v_id = $(this).attr('id'); 
     var full_url = $(this).attr('data-url'); 

     var embed_html = '<iframe width="560" height="315" src="' + full_url + '" frameborder="0" allowfullscreen></iframe>'; 

     //alert(embed_html); 

     $('#video_modal_body').html(embed_html); 
     $('#videoModal').modal('show'); 

    }); 
+0

'full_url'이 올바른 값을 반환합니까?/콘솔 또는 PHP 오류 로그에 오류가 있습니까? – Pedram

답변

0

당신은 https://www.youtube.com/watch?v=[videoId] 반대로 https://www.youtube.com/embed/[videoId] 형식을 사용합니다. Youtube는 후자와 교차 원점 프레임을 허용하지 않습니다.

+0

안녕하세요! 그게 효과가있어! 하지만 모달을 닫으면 어떻게 비디오를 멈출 수 있습니까? – KissTom87

+0

@ KissTom87 글쎄, 또 다른 질문이지만, 가장 간단한 방법은'hidden.bs.modal' 이벤트에서'# video_modal_body'의 내용을 다음과 같이 파괴하는 것입니다 : $ ('# videoModal'). on ('hidden .bs.modal ', function (e) {$ ('video_modal_body ') .html (' ');}) – dferenc

+0

고맙습니다. :) – KissTom87