2011-07-24 68 views
0

我在本地主機上使用Flex Player組件。 FLV視頻文件存儲在bin-debug/Video Source中。該視頻的PHP代碼爲:連接PHP和Flex Player

$id = $_GET["id"]; 
    $media = getDirectoryList("bin-debug/Video Source"); 

    if($media[$id] != null){ 
     $video = $media[$id]; 
     $fileName = "bin-debug/Video Source/".$video; 
     $pieces = explode(".", $video); 
     $video = $pieces[0]; 
    } 

該播放器是通過javascript在HTML頁面上生成的,其中createPlayer();對象標記

<script type="text/javascript"> 
    createPlayer(); 
</script> 

我的問題是在哪裏以及如何把$video變量動態加載視頻在這個FlexPlayer.swf之間的頁面上寫道FlexPlayer.swf。的createPlayer()是:

function createPlayer("<?php echo $fileName; ?>"){ 
    document.writeln("<div id=\"player\">"); 
    document.writeln("<object width=\"489\" height=\"414\">"); 
    document.writeln("<param name=\"player\" value=\"bin-debug/FlexPlayer.swf\">"); 
    document.writeln("<embed src=\"bin-debug/FlexPlayer.swf\" name=\"player\" width=\"489\" height=\"414\">"); 
    document.writeln("</embed>"); 
    document.writeln("</object>"); 
    document.writeln("</div>");    
} 
+0

你能後的代碼,你將視頻細節從PHP傳遞給JS。 – Sukumar

+0

我沒有將數據從PHP傳遞給JS,導致createPlayer()寫入播放器的HTML代碼。我看到的視頻是我在mxml文件中給出的源代碼,但應先編譯mxml,以便更改mxml的videoSource標記值不會成爲選項 – George

+0

爲什麼在此行上有php代碼:函數createPlayer(「<?php echo $ fileName;?>」){? –

回答

1

可以使用flashVars properties

將變量傳遞給SWF文件,而不看到代碼createPlayer(),我不能給你,你應該怎麼做這個具體的細節。

假設您的視頻播放器僅顯示一個視頻,並且該視頻的ID使用POST或GET傳遞到網頁,則使用flashVars傳遞文件名。對於這個推薦使用swfobject。這樣的事情應該做的伎倆:

webpage.php

<?php 
    //your stuff 
    $video = phpFunctionToGetTheFilePath($id); 
    //more stuff 
?> 
<html> 
    <head> 
     <!-- head stuff,the javascript function declaration to display the video player --> 
     <script type="text/javascript"> 
      createPlayer("<?php echo $video; ?>");//the function's argument is the filename to pass as flashvars 
     </script> 
    </head> 
    <body> 
     <!-- your player container somewhere here --> 
    </body> 
</html> 

如果你想改變顯示的視頻而無需刷新頁面,然後考慮使用AJAX來獲取文件名或只是通過在ID Flash播放器,並做這項工作在彎曲(柔性獲取ID,並使用XMLamf從服務器檢索文件名)

+0

現在我將編輯我的帖子,向您展示關於傳遞flashVars的代碼CreatePlayer() – George

+0

http://kb2.adobe.com/cps/164/tn_16417.html –