묻고답하기

제로보드 윈엠프 방송을 뿌려주는 스킨입니다.
갑자기 이런 에러가 나서 질문을 드립니다.

Warning: fsockopen(): unable to connect to cast.nzeo.com:8000 in /free/home/kjh1017/html/zboard/skin/nyounet_winamp_w_1/cast.inc.php on line 30


cast.inc.php 파일의 30번째줄 입니다.

$fp = fsockopen($url, $port, &$errno, &$errstr, 5);                  // 소켓 연결



그리고 아래 소스는 그 나머지 소스들입니다.(cast.inc.php 파일)


<?
                                                                              /*
--------------------------------------------------------------------------------
   ::: BiHon's DreamPHP.com ::: //master@dreamphp.com // http://dreamphp.com
--------------------------------------------------------------------------------
▷ 비혼의 방송정보표시

...심심하다는 이유 하나로 -_-v

array get_info("주소:포트"); // 방송 정보를 가져옴
+--------------------------------------+--------------------------------------+
| air       : [0] 방송안함 [1] 방송중  | version   : 버전                     |
| server    : 서버상태                 | stream    : 정보                     |
| speed     : 속도                     | listen    : 청취자수                 |
| maxlisten : 최대 청취자수            | unique    : 청취자수 (동일 IP 제외)  |
| peak      : 최고 청취자수            | time      : 방송시간                 |
| title     : 제목                     | genre     : 장르                     |
| url       : 주소                     | icq       : ICQ                      |
| aim       : AIM                      | irc       : IRC                      |
| song      : 노래                     |                                      |
+--------------------------------------+--------------------------------------+
[표:인자값]
--------------------------------------------------------------------------------
2001.08.11.(토)                                                               */

function get_info($address) {
  $url_temp = explode(":",$address);                                            // 콜론(:) 기준 분리해 배열에 저장
  $url  = $url_temp[0];                                                         // 주소 분리
  $port = $url_temp[1];                                                         // 포트 분리
  $fp = fsockopen($url, $port, &$errno, &$errstr, 5);                           // 소켓 연결
  if($fp) {                                                                     // 연결 성공시
    fputs($fp,"GET /index.html HTTP/1.0nUser-Agent: Mozilla/4.0nn");         // 헤더 보냄
    while(!feof($fp)) $temp .= fgets($fp,1024);                                 // 파일이 끝날때까지 1024바이트씩 가져옴
    fclose($fp);                                                                // 접속 해제
//------------------------------------------------------------------------------// 가공시작
$keyword = array(                                                               // 찾을 값 (2차원 배열)
array("version" => "SHOUTcast Server Version"),
array("server"  => "Server Status:"),
array("stream"  => "Stream Status:"),
array("peak"    => "Listener Peak:"),
array("time"    => "Average Listen Time:"),
array("title"   => "Stream Title:"),
array("genre"   => "Stream Genre:"),
array("url"     => "Stream URL:"),
array("icq"     => "Stream ICQ:"),
array("aim"     => "Stream AIM:"),
array("irc"     => "Stream IRC:"),
array("song"    => "Current Song:"),
);
$size = sizeof($keyword);                                                       // 배열의 크기 구함
$temp = strip_tags(                                                             // 4) 모든 태그 제거
        implode("n<tr",                                                        // 3) n<tr 문자열로 다시 결합
        explode("<tr",                                                          // 2) <tr 기준으로 분리 -> 배열값
        str_replace(" "," ",$temp))));                                     // 1)  를 공백으로 바꿈
for ($i=0; $i<$size; $i++) {                                                    // 배열의 크기만큼 반복
  $t_key  = array_keys($keyword[$i]);                                           // 키값을 가져옴
  $t_key1 = $t_key[0];                                                          // 처음키
  $t_key2 = $keyword[$i][$t_key1];                                              // 키에 해당하는 값을 가져옴
  $address = strpos($temp,$t_key2);                                             // 키에 해당하는 위치값 구함
  if ($address) {                                                               // 위치값이 있을 경우
    $start = $address+strlen($t_key2);                                          // 시작위치값 저장 (+길이)
    $end = $start;                                                              // 시작위치값 저장 (증가치)
    while(substr($temp,$end,1)!="n") $end++;                                   // 다음줄 찾기 전까지 반복
    $temp2[$t_key1] = trim(substr($temp,$start,$end-$start));                   // 찾은 결과값 출력
    if ($t_key1=="aim") $temp2[$t_key1] = urldecode($temp2[$t_key1]);           // AIM은 디코드
  }
}
//------------------------------------------------------------------------------// 가공끝
  }
  $stream           = explode(" ",$temp2[stream]);                              // stream 문자열 공백 기준 분리
  $temp2[speed]     = trim($stream[4])." ".trim($stream[5]);                    // 방송속도 : 4,5번째 요소 가져옴
  $temp2[listen]    = trim($stream[7]);                                         // 청취자 : 7번째 요소
  $temp2[maxlisten] = trim($stream[9]);                                         // 최대청취인원 : 9번째 요소
  $temp2[unique]    = str_replace("(","",trim($stream[11]));                    // 청취자 : 11번째 요소 (동일 IP 제외)
  $temp2[time] = str_replace("h","시간",str_replace("m","분",str_replace("s","초",$temp2[time]))); // 시간,분,초 변환
  if ($temp2[server]=="Server is currently up and public.") $temp2[air] = 1;    // 방송중
  elseif ($temp2[server]=="Server is currently down.")      $temp2[air] = 0;    // 방송안함
  else                                                      $temp2[air] = -1;   // 찾지 못함
  return $temp2;                                                                // 값 반환
}

?>  
글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
CHZy 사진을 첨부하면 2~4장씩 올라가버리네요... [1] 2011.11.28 by CHZy
단기종합 bodex 게시물 수정을못하게 하고싶습니다 [1] 2011.11.28 by 송동우
해피지영 사이트 게시글 순서 뒤죽박죽, 작성자도 이상, 읽은 횟수도;;; db document_srl  
아이디비밀 가로 서브메뉴를 세로서브메뉴로 바꿀려고 하는데...  
루밋 xe 연합 모듈이 말을 안듣네요 ㅎㅎ;;  
Sunt 회원이 글삭제시 포인트 차감 안되게 하고 싶습니다.  
alljoy 이럴때 게시판을 어떻게 ..... [2] file 2011.11.28 by 비터
새벽3시에 편집버튼을 누른후, js 오류가 발생합니다.  
날위한멜로디 관리자 페이지가 이상하게 뜨네요. [1] file 2011.11.28 by 송동우
carpe712 메뉴가 안나타납니다. [1] 2011.11.28 by 비터
이영제 Core 쉬운설치시 에러나는 것, 왜 그런지 알려주세요.  
아까거기서 가입폼관리 로 입력한 항목을 외부페이지에서 출력 및 수정 필요 할때..?  
정은미915 다국어 홈페이지 영문 레이아웃 변경은 또 어떻게 ㅠㅠ [1] file 2011.11.28 by 송동우
한보람796 레이아웃 설정값 변경시 js에러 file  
루블레시아 contact us 라는 모듈 이메일이 안보내지네요  
액션액션 게시판 DB table은 어떤건가요? [1] 2011.11.28 by 송동우
무돌이 1.4.5.10 버전에서 1.5.0.9 버전으로 업그레이드시 오류  
공망이 게시판 글작성시에 기본으로 일정내용을 출력되게 하려면 어떻게 해야 하나요? [1] 2011.11.28 by 조양각
하늘갈대 로그인 않되는것 문제 때문입니다.  
서동배861 게시글 삭제된거 복구하는 방법 부탁 드립니다 [3] 2011.11.28 by Negai~
강아지60 shopxe 위젯에서 price_stand  
이동일636 지식인 xe 백업 방법 있나요????  
미체르 송동우님 질문좀 하겠습니다. [1] 2011.11.28 by 송동우
단기종합 bodex 댓글 수정못하게 하고싶습니다 [1] 2011.11.28 by 송동우
축복의 통로 게시판 쓰기에서 오류  
단기종합 송동우님 [1] 2011.11.27 by 송동우
안돼냐규 쪽지알람기능추가  
루큐모닷컴 송동우님 // xe 나이인증 질문이요 [1] 2011.11.27 by 송동우
무색무취 모바일 메뉴를 시작 페이지로 설정하기 [1] 2011.11.27 by kantsoft
H754 로그인 오류시 안내문구