웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
[수정본]MP3파일를 검색하여 윈앰프로 실시간 감상하기
2002.03.28 17:38
http://java.compuz.com/php/findmp3.php[원리이해]
두가지 검색 기능이 존재하는데..
검색1.입력한 URL검색하여 사운드 파일만 뽑아 옵니다.
검색2.엠파스사운드파일 검색 폼을 내부에 추가해 URL검색이 아닌 키워드 검색을 하여 사운드 파일을 뽑아 옵니다.
검색된 리스트를 직접 클릭하면 다운로드 되고 "WinAmp실시간듣기"를 클릭하면 검색된 리스트가 list.m3u파일에 저장된 후 윈앰프가 실행됩니다.
[태스트 방법]
사운드파일이 링크된 웹페이지를 URL폼에 넣어 검색하는 방법과 엠파스사운드검색폼에 키워드(예:ses)를 넣고 검색하는 아주 쉬운 검색 방법이 있습니다.
파일이름:findmp3.php
<? //음악파일 검색하여 윈앰프로 실시간 듣기
echo "
<body>
<center>
<form method=post action=$PHP_SELF>
<input type=hidden name=ext value=ok>
음악파일를 검색하고 싶은 웹페이지를 입력하세요.<br>
[mp3,mp2,mid,wav 파일검색 지원]<br>
URL검색 <input type=text name=url size=40> <input type=submit value=사운드검색> <br>
<font color=blue>엠파스사운드검색</font> <input type=text name=amurl size=30 value=''><input type=submit value=키워드+파일검색>
</form>
<form method=post action=./findmp3_m3u.php>
<input type=submit value=WinAmp로실시간듣기>
</form>
</center>
</body>
";
if( $ext == "ok" )
{
if($url){$url=$url;}
else if($amurl){$url="http://search.empas.com/search/avi.html?q=".$amurl;}
$fcontents=implode(" ",file($url));
//n으로 저장된 배열을 연결문자를 이용하여 한개의 스트링변수에 저장
//$fcontents=htmlspecialchars($fcontents);
$fcontents=explode("http://",$fcontents);
$count=1;
echo"$url 에서 검색된 음악파일 목록";
for($i=1; $i< sizeof($fcontents); $i++)
{
if(eregi("(.mp3)|(.wav)|(.mid)|(.mp2)",$fcontents[$i]))
{
eregi("(([a-zA-Z0-9_-./~@?=%&])(.+)(.mp3|.wav|.mid|.mp2))",$fcontents[$i],$memo);
if(!eregi($memo[0],$musiclist))
{
$musiclist.=$memo[0]; //중복 파일 검사..
echo" $count <a href='http://$memo[0]'>http://$memo[0]</a> ";
//반복문에 의해 배열$memo가 한번만 저장되고 갱신된다.
$count++;
$mp3list.="#EXTM3Un#EXTINF:0,http://$memo[0]nhttp://$memo[0]n"; //m3u파일에서 사용되는 형식으로 바꿈
}
}
}
$fp=fopen("list.m3u","w"); //list.m3u는 findmp3.php파일이 위치한 디렉토리에 생성된다.
fwrite($fp,$mp3list);
fclose($fp);
echo"검색된 총 파일 개수:".($count-1)."개";
}
?>
두번째 파일이름:findmp3_m3u.php
<?
$myurl="http://".$SERVER_NAME."/php"; //자신의 계정주소를 입력한다. list.m3u는 findmp3.php파일이 위치한 디렉토리에 생성된다.
header("location:$myurl/list.m3u");
?>
두가지 검색 기능이 존재하는데..
검색1.입력한 URL검색하여 사운드 파일만 뽑아 옵니다.
검색2.엠파스사운드파일 검색 폼을 내부에 추가해 URL검색이 아닌 키워드 검색을 하여 사운드 파일을 뽑아 옵니다.
검색된 리스트를 직접 클릭하면 다운로드 되고 "WinAmp실시간듣기"를 클릭하면 검색된 리스트가 list.m3u파일에 저장된 후 윈앰프가 실행됩니다.
[태스트 방법]
사운드파일이 링크된 웹페이지를 URL폼에 넣어 검색하는 방법과 엠파스사운드검색폼에 키워드(예:ses)를 넣고 검색하는 아주 쉬운 검색 방법이 있습니다.
파일이름:findmp3.php
<? //음악파일 검색하여 윈앰프로 실시간 듣기
echo "
<body>
<center>
<form method=post action=$PHP_SELF>
<input type=hidden name=ext value=ok>
음악파일를 검색하고 싶은 웹페이지를 입력하세요.<br>
[mp3,mp2,mid,wav 파일검색 지원]<br>
URL검색 <input type=text name=url size=40> <input type=submit value=사운드검색> <br>
<font color=blue>엠파스사운드검색</font> <input type=text name=amurl size=30 value=''><input type=submit value=키워드+파일검색>
</form>
<form method=post action=./findmp3_m3u.php>
<input type=submit value=WinAmp로실시간듣기>
</form>
</center>
</body>
";
if( $ext == "ok" )
{
if($url){$url=$url;}
else if($amurl){$url="http://search.empas.com/search/avi.html?q=".$amurl;}
$fcontents=implode(" ",file($url));
//n으로 저장된 배열을 연결문자를 이용하여 한개의 스트링변수에 저장
//$fcontents=htmlspecialchars($fcontents);
$fcontents=explode("http://",$fcontents);
$count=1;
echo"$url 에서 검색된 음악파일 목록";
for($i=1; $i< sizeof($fcontents); $i++)
{
if(eregi("(.mp3)|(.wav)|(.mid)|(.mp2)",$fcontents[$i]))
{
eregi("(([a-zA-Z0-9_-./~@?=%&])(.+)(.mp3|.wav|.mid|.mp2))",$fcontents[$i],$memo);
if(!eregi($memo[0],$musiclist))
{
$musiclist.=$memo[0]; //중복 파일 검사..
echo" $count <a href='http://$memo[0]'>http://$memo[0]</a> ";
//반복문에 의해 배열$memo가 한번만 저장되고 갱신된다.
$count++;
$mp3list.="#EXTM3Un#EXTINF:0,http://$memo[0]nhttp://$memo[0]n"; //m3u파일에서 사용되는 형식으로 바꿈
}
}
}
$fp=fopen("list.m3u","w"); //list.m3u는 findmp3.php파일이 위치한 디렉토리에 생성된다.
fwrite($fp,$mp3list);
fclose($fp);
echo"검색된 총 파일 개수:".($count-1)."개";
}
?>
두번째 파일이름:findmp3_m3u.php
<?
$myurl="http://".$SERVER_NAME."/php"; //자신의 계정주소를 입력한다. list.m3u는 findmp3.php파일이 위치한 디렉토리에 생성된다.
header("location:$myurl/list.m3u");
?>
댓글 0
제목 | 글쓴이 | 날짜 |
---|---|---|
스킨 시스템 구축.(1탄 읽어오기) [11] | 씨파개 | 2003.05.13 |
Wake On Lan 기능 사용하기... [3] | sMokaHallo | 2003.05.17 |
썸네일 자동생성하고 이미지 사이즈 자동 줄이기... [6] | sMokaHallo | 2003.05.21 |
홈페이지의 내용을 DB에 담기 [15] | 세죠위그이 | 2003.05.30 |
체크박스등으로 배열로 변수를 넘길때.. [1] | myself2 | 2003.06.06 |
php 로 기존 문서 포함시키기 [10] | 이성헌 | 2003.06.08 |
PHP 익히기 1 [24] | 구리구리 | 2003.06.09 |
PHP 익히기 2 [9] | 구리구리 | 2003.06.10 |
PHP 익히기 3 [11] | 구리구리 | 2003.06.17 |
이미 인클루드된 파일은 다시 인클루드하지 않기 [14] | 김병희 | 2003.06.20 |
htmlspecialchars 사용하시는 분들 [5] | holies | 2003.07.11 |
Thumbnail 생성하기 - 수정^^; [9] | holies | 2003.07.11 |
'와 "의 속도 차이?! [6] | holies | 2003.07.12 |
초간단 php 랜덤 이미지 및 랜덤 배경이미지 소스 [6] | 거금도 | 2003.07.24 |
다른 사이트에 있는 파일 읽어오기 [50] | 김규백 | 2003.07.25 |
스킨 시스템 사용하기 [2] | 김규백 | 2003.07.25 |
제로보드 + MSN 메신저 (작성글에 리플이나 코멘트가 달리면 MSN으로 알려준다?)
[18]
![]() | HungryMania | 2003.08.01 |
체널을 응용해서 tmain.php?tdb=test&db=src 식으로 쓰기 [12] | 9000㎒ | 2003.08.01 |
$i++ !== $i += 1 [14] | 플로렐라 | 2003.08.04 |
개판 오분전 정규식(4) | 미친개 | 2003.08.07 |