묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
프레임간 변수 전달
2005.02.20 20:45
안녕하세요~!!
프레임을 사용해 배경음악을 제어하기 위한 소스를 만드는 중인데 도저히 안되네요
topFrame은 항상 고정해놓은 상태로(embed 소스가 포함) mainFrame에서 top프레임의 배경음악을 제어하고 음악의 제목을 출력할려고 합니다.
지금까지 결과로는 배경음악 제어는 되지만... 제목을 출력하지 못하고 있습니다.
********************************************질문의 요점**************************************************
* *
* topFrame의 노래제목(소스내용을 참고하시면 $strCurrent)을 mainFrame에서 사용할수 있는 방법좀 알려주세요 *
* *
*********************************************************************************************************
고수님들 도와주세요
일단 화면구성은 2개의 프레임으로 구성되어있습니다.
┌──────────────────┐
│frame name = topFrame │
│┌────────────────┐│
││ ││
││ bgm_main.html ││
││ ││
││ ││
│└────────────────┘│
├──────────────────┤
│frame name = mainFrame │
│┌────────────────┐│
││ ││
││ bgm_clotrol.html ││
││ ││
││ ││
│└────────────────┘│
└──────────────────┘
화면구성은 대략 이러하고 이제 소스파일입니다.
----------------------------------------bgm_main.html----------------------------------------------
<?
/*
- 랜덤으로 재생되는 음악 -
이 소스는 하나의 노래가 끝나면, 다시 페이지를 로딩하면서 새로운 노래가 재생 되도록 되어있다.
파일 목록을 세션 변수에 저장하여, 매번 페이지가 로딩될때마다 opendir을 호출하는 것을 방지하였다.
즉, 브라우저를 종료하고 새로 접속했을때만, 새로운 노래 목록을 가져오도록 했슴.
*/
session_start();
// 노래가 저장된 디렉토리
$strMusicDir = "./bgm";
//$_SESSION["aryMusic"] : 노래 목록이 저장되는 배열
// 세션 변수가 없을 때(즉, 처음 페이지가 로딩될 때) if문 수행
if(!isset($_SESSION["aryMusic"]))
{
$handle = opendir("./bgm");
$_SESSION["aryMusic"] = array();
// 노래 파일명을 배열 $_SESSION["aryMusic"]에 차례로 할당한다.
while ($strFileName = readdir($handle))
if(is_file($strMusicDir . "/" . $strFileName))
$_SESSION["aryMusic"][] = $strFileName;
closedir($handle);
}
// 배열 $_SESSION["aryMusic"]의 크기(즉 노래파일의 수)를 구한다.
$intCnt = count($_SESSION["aryMusic"]);
// $_SESSION["aryMusic"]의 랜덤 index를 구한다.
$selected_music = mt_rand(0, $intCnt - 1);
?>
<HTML>
<HEAD>
<TITLE> bgm_main.html </TITLE>
<SCRIPT event="EndOfStream" for="jukebox" language="javascript">
location.href="<?php echo $PHP_SELF;?>";
</script>
</HEAD>
<body>
<p>
</p>
<p>
<!-- 생성된 랜덤 index에 해당하는 파일을 재생한다. -->
<embed src="<?php echo $strMusicDir . "/" . $_SESSION["aryMusic"][$selected_music];?>" autostart="true" hidden="true" loop="infinite" id="jukebox" volume="0"></enbed>
</p>
<marquee width=200 scrollamount=2>
<?php
$strTemp = substr($_SESSION["aryMusic"][$selected_music], 0, strrpos($_SESSION["aryMusic"][$selected_music], "."));
$strCurrent = $strTemp;
echo "제목 : " .$strCurrent;
?>
</marquee>
</body>
</html>
----------------------------------------bgm_contorl.html----------------------------------------------
<HTML>
<HEAD>
<TITLE> bgm_contorl.html </TITLE>
</HEAD>
<BODY topmargin=0 leftmargin=0>
<table>
<tr>
<td>
<img src="images/bgm_logo.gif">
</td>
<td>
<marquee width=120 scrollamount=2>
<?php
echo ; //-------- ★★★★★★★이부분에 topFrame의 strCurrent 변수를 출력하고 싶습니다.★★★★★★★★
?>
</marquee>
</td>
<td>
<a href="#" onclick="parent.parent.topFrame.document.all.jukebox.play()"><img src ="images/play_button.gif" border=0 marginwidth="0" marginheight="0"></a>
<a href="#" onclick="parent.parent.topFrame.document.all.jukebox.stop()"><img src ="images/stop_button.gif" border=0 marginwidth="0" marginheight="0"></a>
<a href="#" onclick="parent.parent.topFrame.document.all.jukebox.pause()"><img src ="images/pause_button.gif" border=0 marginwidth="0" marginheight="0"></a>
</td>
</tr>
</table>
</BODY>
</HTML>
프레임을 사용해 배경음악을 제어하기 위한 소스를 만드는 중인데 도저히 안되네요
topFrame은 항상 고정해놓은 상태로(embed 소스가 포함) mainFrame에서 top프레임의 배경음악을 제어하고 음악의 제목을 출력할려고 합니다.
지금까지 결과로는 배경음악 제어는 되지만... 제목을 출력하지 못하고 있습니다.
********************************************질문의 요점**************************************************
* *
* topFrame의 노래제목(소스내용을 참고하시면 $strCurrent)을 mainFrame에서 사용할수 있는 방법좀 알려주세요 *
* *
*********************************************************************************************************
고수님들 도와주세요
일단 화면구성은 2개의 프레임으로 구성되어있습니다.
┌──────────────────┐
│frame name = topFrame │
│┌────────────────┐│
││ ││
││ bgm_main.html ││
││ ││
││ ││
│└────────────────┘│
├──────────────────┤
│frame name = mainFrame │
│┌────────────────┐│
││ ││
││ bgm_clotrol.html ││
││ ││
││ ││
│└────────────────┘│
└──────────────────┘
화면구성은 대략 이러하고 이제 소스파일입니다.
----------------------------------------bgm_main.html----------------------------------------------
<?
/*
- 랜덤으로 재생되는 음악 -
이 소스는 하나의 노래가 끝나면, 다시 페이지를 로딩하면서 새로운 노래가 재생 되도록 되어있다.
파일 목록을 세션 변수에 저장하여, 매번 페이지가 로딩될때마다 opendir을 호출하는 것을 방지하였다.
즉, 브라우저를 종료하고 새로 접속했을때만, 새로운 노래 목록을 가져오도록 했슴.
*/
session_start();
// 노래가 저장된 디렉토리
$strMusicDir = "./bgm";
//$_SESSION["aryMusic"] : 노래 목록이 저장되는 배열
// 세션 변수가 없을 때(즉, 처음 페이지가 로딩될 때) if문 수행
if(!isset($_SESSION["aryMusic"]))
{
$handle = opendir("./bgm");
$_SESSION["aryMusic"] = array();
// 노래 파일명을 배열 $_SESSION["aryMusic"]에 차례로 할당한다.
while ($strFileName = readdir($handle))
if(is_file($strMusicDir . "/" . $strFileName))
$_SESSION["aryMusic"][] = $strFileName;
closedir($handle);
}
// 배열 $_SESSION["aryMusic"]의 크기(즉 노래파일의 수)를 구한다.
$intCnt = count($_SESSION["aryMusic"]);
// $_SESSION["aryMusic"]의 랜덤 index를 구한다.
$selected_music = mt_rand(0, $intCnt - 1);
?>
<HTML>
<HEAD>
<TITLE> bgm_main.html </TITLE>
<SCRIPT event="EndOfStream" for="jukebox" language="javascript">
location.href="<?php echo $PHP_SELF;?>";
</script>
</HEAD>
<body>
<p>
</p>
<p>
<!-- 생성된 랜덤 index에 해당하는 파일을 재생한다. -->
<embed src="<?php echo $strMusicDir . "/" . $_SESSION["aryMusic"][$selected_music];?>" autostart="true" hidden="true" loop="infinite" id="jukebox" volume="0"></enbed>
</p>
<marquee width=200 scrollamount=2>
<?php
$strTemp = substr($_SESSION["aryMusic"][$selected_music], 0, strrpos($_SESSION["aryMusic"][$selected_music], "."));
$strCurrent = $strTemp;
echo "제목 : " .$strCurrent;
?>
</marquee>
</body>
</html>
----------------------------------------bgm_contorl.html----------------------------------------------
<HTML>
<HEAD>
<TITLE> bgm_contorl.html </TITLE>
</HEAD>
<BODY topmargin=0 leftmargin=0>
<table>
<tr>
<td>
<img src="images/bgm_logo.gif">
</td>
<td>
<marquee width=120 scrollamount=2>
<?php
echo ; //-------- ★★★★★★★이부분에 topFrame의 strCurrent 변수를 출력하고 싶습니다.★★★★★★★★
?>
</marquee>
</td>
<td>
<a href="#" onclick="parent.parent.topFrame.document.all.jukebox.play()"><img src ="images/play_button.gif" border=0 marginwidth="0" marginheight="0"></a>
<a href="#" onclick="parent.parent.topFrame.document.all.jukebox.stop()"><img src ="images/stop_button.gif" border=0 marginwidth="0" marginheight="0"></a>
<a href="#" onclick="parent.parent.topFrame.document.all.jukebox.pause()"><img src ="images/pause_button.gif" border=0 marginwidth="0" marginheight="0"></a>
</td>
</tr>
</table>
</BODY>
</HTML>
댓글 1
-
써니루루☆
2005.03.12 21:53
해결하셨겠지만 input type=hidden 을 이용해서 변수를 만드신 후에 폼 테그에 값을 저장시켜놓고 다른쪽에서 해당 값을 가져가면 됩니다.