웹마스터 팁

http://morami.net/test_play/play_list.php시작 하기전에 본 팁은 phpschool 에서 트루님과 fguy님께서 써주신글을 참조로 하였음을 밝힙니다.

트루님과 fguy님께 실례가 되지 않았으면 하네요.

대충 읽다 보시면 어떤 내용인지 쉽게 감이 오시리라 생각됩니다.
일단 알고리즘은 이렇습니다.

1. 자바스크립트를 이용해 get 방식으로 play.php 로 필요한 정보들을 보냅니다.
2. 그럼 그 정보들을 받아 asx 재생 파일을 만든후 뿌려줌과 동시에 연주가 되는 것이죠.

간단하지요.

근데 주소를 숨긴다는 것이 무슨 말이냐고요.?

재생된 윈도우 미디어에서 파일 > 등록정보 > 위치 를 보시면 보통 음악의 asx나 asf 파일 주소 표시 됩니다.
하지만 위처럼 재생을 하게되면
http://morami.net/test_play/play.php?title=Snowfall&musician=Brian*Crain&fn=snowfall
이렇게 표시가 되지요..^^
뭐 별거 아닌거 같지만..-.- 필요로 하는 분이 계실거 같아서요.
이제 소스와 대략적인 설명을 드리겠습니다.

두개의 파일이 있습니다.
play_list,php (플레이 리스트 파일 입니다.)
play.php (재생에 필요한 파일입니다.)

play_list.php
-------------------------------------------------------------------------------------------------------
<script language=JavaScript>
function play(title,musician,fn)
{
        location.replace("play.php?title=" + title + "&musician=" + musician + "&fn=" + fn);
}
</script>
1. <a href=javascript:play('A*new*Day','Brian*Crain','a_new_day')>A New Day</a><br>
2. <a href=javascript:play('Ave*Maria','Brian*Crain','ave_maria')>Ave Maria</a><br>
3. <a href=javascript:play('Tenderness','Brian*Crain','tenderness')>Tenderness</a><br>
4. <a href=javascript:play('Snowfall','Brian*Crain','snowfall')>Snowfall</a>
-------------------------------------------------------------------------------------------------------
소스설명 :
javascript:play('A*new*Day','Brian*Crain','a_new_day')
'A*new*Day'  -> 음악의 제목을 적어 줍니다. 공백이 있을시 자스경고가 남으로 공백이 있을시 * 로 채워 줍니다.
'+ 'Brian*Crain'   -> 뮤지션을 적어 줍니다. 역시 공백이 있을시 * 로 채워 줍니다.
'a_new_day'   -> 확장자를 뺀 파일 이름을 적어 줍니다. a_new_day.asx 라면 a_new_day 만 적어주면 되지요.                          

위와 같은 식으로 반복해서 적어 주시면 됩니다.

이렇게 해서 제목을 클릭하면 자스에 play 함수를 호출해서 play.php로 변수를 넘겨 줍니다.
제목은 $title 라는 변수에 뮤지션은 $musician 이라는 변수 파일이름은 $fn 이라는 변수로 저장되어 넘겨 줍니다.



play.php
-------------------------------------------------------------------------------------------------------
<?
header("Content-type:audio/x-ms-wax");

$title = str_replace( '*', ' ',$title);
$musician = str_replace( '*', ' ',$musician);
$url="http://home.bcline.com/oxxin/".$fn.".asf";

echo "<asx version=3>";
echo "<BANNER FIXED HREF="http://morami.net/briancrain/orderplay/banner.gif">";
echo "<abstract>Brian Crain In nature [NewAge] </abstract>";
echo "<MoreInfo href = "http://morami.net/briancrain"/></BANNER>";
echo "<Title>morami's aroma</title>";
echo "<entry>";
echo "<title>$title</title>";
echo "<author>$musician</author>";
echo "<copyright>해당곡의 저작권자</copyright>";
echo "<moreinfo href="http://morami.net/briancrain" target="_blank"></moreinfo>";
echo "<ref Href="$url"/>";
echo "</entry>";
echo "</asx> ";
?>
-------------------------------------------------------------------------------------------------------
소스설명 :
$title = str_replace( '*', ' ',$title);
위에서 넘겨 받은 변수에서 제목과 뮤지션의 이름에 * 해주었던것을 str_replace 함수로 공백으로 바꿔줍니다.

$url="http://home.bcline.com/oxxin/".$fn.".asf";
넘겨 받은 $fn 파일 이름에 음악의 절대 경로와 합체? 해서 완성된 url 을 만듭니다.

이제 거의 끝났습니다.
asx 파일을 만들고 뿌려준후
header("Content-type:audio/x-ms-wax"); 로 윈도우 미디어 파일 타입이라는 것을 알립니다.

그러면 바로 윈도우 미디어 플레이어가 작동하며 재생이 됩니다.

되도록 쉽게 설명하려고 노력했는데 어떻게 이해가 되셨는지 모르겠습니다.

마지막으로 asx 파일 포맷에 대해서 설명 드리면서 마무리 질께요.


-------------------------------------------------------------------------------------------------------
echo "<asx version=3>";
echo "<BANNER FIXED HREF="http://morami.net/briancrain/orderplay/banner.gif">";
// 윈도우 미디어 재생시 하단에 보일 배너의 경로를 적어 줍니다.[수정하세요]

echo "<abstract>Brian Crain In nature [NewAge] </abstract>";
// 배너 위에 마우스를 올렸을때 풍선도움말에 들어갈 내용입니다. alt="" 와 같은 기능이지요.[수정하세요]

echo "<MoreInfo href = "http://morami.net/briancrain"/></BANNER>";
// 배너를 클릭했을때 이동할 경로를 적어주세요 자기 홈페이지 주소 적어주면 되겠지요. ^^ [수정하세요]

echo "<Title>morami's aroma</title>";
//보통 홈페이지 타이틀을 적어 줍니다. [수정하세요]

echo "<entry>";
echo "<title>$title</title>";
//제목 [수정하지 마세요..^^;]

echo "<author>$musician</author>";
//뮤지션 [수정하지 마세요..^^;]

echo "<copyright>해당곡의 저작권자</copyright>";
//카피라이트 수정하셔도 되지만 보통 이렇게들 하지요. 후후 ^^;

echo "<moreinfo href="http://morami.net/briancrain" target="_blank"></moreinfo>";
//재생되는 곡의 제목을 클릭하면 이동할 url 입니다.  홈페이지 주소를 적어주시면 됩니다.  [수정하세요]

echo "<ref Href="$url"/>";
// 음악의 경로 [수정하지 마세요..^^;]

echo "</entry>";
echo "</asx> ";
-------------------------------------------------------------------------------------------------------

이로써 너무나도 허무한 설명을 마치겠습니다.
이거 다아는거 아니냐고 돌던지시 마세요.
초보분들을 위해서 조금이나마 공부도 될겸해서 올린거니깐요.. -.-ㅣ

뭐 복잡하신분은 그냥 위에꺼 두 파일 복사하신후 경로만 대충 수정하시면 될겁니다.
확장을 하자면 db와 연동해서 할수도 있겠구요. 폴더나 카테고리도 적절히 만들 수 있으리라 사려됩니다.

더 궁금하신 점 있으시면 코멘트 달아 주시거나 제 홈페이지에 글남기셔도 괘안습니다.

제로보드와 안지 언 3년이군요... 지금 제로보드를 쓰고 있지만 않지만 난 언제 이런 게시판 한번 만들어보나
이런 맘으로 삽니다.^^;

그럼 조금이나마 많은  도움 되시길 모라미가 바랍니다.

미리보기 : http://morami.net/test_play/play_list.php
제목 글쓴이 날짜
개판 오분전 세션 - 6 미친개 2003.04.08
개판 오분전 세션 - 5 미친개 2003.04.08
개판 오분전 세션 - 4 미친개 2003.04.08
개판 오분전 세션 - 3 [4] 미친개 2003.04.08
개판 오분전 세션 - 2 [4] 미친개 2003.04.08
개판 오분전 세션 - 1 [7] 미친개 2003.04.08
객체를 이용한 winamp 방송정보 알아내는 소스 [4] 흑심품은연필 2003.04.07
내 홈피도 채널을?! #1 [16] (' _ ') napclub 2003.03.31
이젠 주소검색 편하게쓰자~~~!! (새창띄우지 않습니다) [5] _-=Knight=-_ 2003.03.05
메일 인증시 기존 회원 전부 인증걸기;;; [4] teslaMINT 2003.03.04
게시판 통체 인클루드 하기 [12] 깜보 2003.03.02
여러분이 원하시던 로또복권 소스공개~ [12] Dopesoul 2003.02.22
NZEO 이메일 인증 따라하기 [또 수정 --;] [44] file teslaMINT 2003.02.22
계정이 php를 지원하는지아닌지 잘 모를때... [16] 격투왕맹호 2003.02.19
유용한 함수 몇가지...;;;; [7] Yuki-H. 2003.02.19
PHP,자바스크립트 제 3탄! 아래에 헤더로 asx감추기를 이용한 PHP무비 플레이어! file ☆좀비파우더™ 2003.02.16
DB를 이용한 현재접속자 수 구하기 [6] 김현석 2003.02.14
[초간단] 헤더로 asx 파일 음악 주소를 숨겨봐요. [9] 모라미 2003.02.14
제로보드 스킨들이 어느 게시판에 쓰이는지 알아보는 소스 [12] teslaMINT 2003.02.11
V3 neo+ 항상 최신버전으로 자동링크시키기 [7] 김현석 2003.02.08