텍스트 파일을 읽어서 랜덤하게 출력하기 질문입니다.

텍스트 파일을 읽어서 랜덤하게 출력하기 질문입니다.

QA

텍스트 파일을 읽어서 랜덤하게 출력하기 질문입니다.

본문

http://sir.kr/pg_tip/15074 

 

검색을 해보니....txt 파일에 내용을 한줄씩 적어서, 랜덤하게 내용을 불러오는 방법이라고 합니다.

 

저 방법을 이용해서, 유투브의 동영상을 랜덤하게 불러오려고 합니다.

 

video_id.txt 라는 파일을 만들어서

 

bwmSjveL3Lc 

5m2KBDBueAM 

dISNgvVpWlo 

.

.

.

 

...의 형태로 한줄씩 유투브 동영상의 videoid를 적고 아래와 같이 txt 파일을 읽어서

<? echo $video_id; ?>의 방법으로 시도해보았는데, 작동이 안되네요... 

에러 화면도 안나오고...유투브 화면자체도 안 나옵니다.

 

뭐가 문제일까요??

 


<?
$f_contents = file ("video_id.txt");
$video_id = $f_contents[array_rand ($f_contents)];
 
?>
 
    <div id="player"> </div>
 
    <script>     
      var tag = document.createElement('script');
 
      tag.src = "https://www.youtube.com/iframe_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
   
      var player;
      function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
          height: '566',
          width: '1008',
          videoId: '<? echo $video_id; ?>',
          
          playerVars: {
          autoplay: 1,
          controls: 0,
          disablekb: 1,
          loop: 1,
          modestbranding: 1,
          showinfo: 0,
          autohide: 1,
          iv_load_policy: 3,
          cc_load_policy: 0,
          rel: 0
        },
        events: {
            'onReady': onPlayerReady,
        }
    });
  }
 
 function onPlayerReady(event) {
        event.target.playVideo();
        player.mute();
        player.setVolume(0);
        //player.setSize(1920, 1080);
        player.setLoop(true);
        player.setPlaybackQuality('hd1080');
      }
    </script>

 

 

이 질문에 댓글 쓰기 :

답변 1


<?
// 텍스트파일내의 각 줄끝에 개행(새줄)문자붙어있으면 제거 AND 비어있는 줄 제거
$f_contents = file ("video_id.txt", FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);
$video_id = $f_contents[array_rand ($f_contents)];
 
?>
 
    <div id="player"> </div>
 
    <script>     
      var tag = document.createElement('script');
 
      tag.src = "https://www.youtube.com/iframe_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
   
      var player;
      function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
          height: '566',
          width: '1008',
          videoId: '<? echo $video_id; ?>',
          
          playerVars: {
          autoplay: 1,
          controls: 0,
          disablekb: 1,
          loop: 1,
          modestbranding: 1,
          showinfo: 0,
          autohide: 1,
          iv_load_policy: 3,
          cc_load_policy: 0,
          rel: 0
        },
        events: {
            'onReady': onPlayerReady,
        }
    });
  }
 
 function onPlayerReady(event) {
        event.target.playVideo();
        player.mute();
        player.setVolume(0);
        //player.setSize(1920, 1080);
        player.setLoop(true);
        player.setPlaybackQuality('hd1080');
      }
    </script>
답변을 작성하시기 전에 로그인 해주세요.
전체 76
QA 내용 검색

회원로그인

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