播放列表中的问题,当我们选择不同的歌曲 [英] problem in playlist when we select the different songs

查看:168
本文介绍了播放列表中的问题,当我们选择不同的歌曲的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

实际上,在我的网站www.musicking.in中,当用户选择歌曲时,一个播放器窗口将打开,并且将访问相应的所选歌曲xml播放列表,播放器将播放这些歌曲。



实际上它的工作正常。
,但有时问题是,如此多的用户正在访问不选择歌曲的播放器,无论是之前他选择播放的歌曲,还是没有播放歌曲。

我。



{我的玩家代码}

 <?php 
if(isset($ _ POST [song])&& $ _POST ['song']!=)
{
$ song = $ _POST [song ]。

else {$ song = array();}

$ dom = new DOMDocument(1.0);
//以纯文本形式在浏览器中显示文档
//为了便于阅读目的
$ b $ //创建根元素
$ root = $ dom-> createElement(播放列表);
$ dom-> appendChild($ root);
$ root-> setAttribute('version',1);
$ root-> setAttribute('xmlns',http://xspf.org/ns/0/);
$ rootnext = $ dom-> createElement(trackList);
$ root-> appendChild($ rootnext);
foreach($ song as $ counter){
$ tokens =,;
$ tokenized = strtok($ counter,$ tokens);
//创建子元素

$ song = $ dom-> createElement(track);
$ rootnext-> appendChild($ song);
$ song1 = $ dom-> createElement(creator);
$ song-> appendChild($ song1);
$ text = $ dom-> createTextNode(www.musicking.in);
$ song1-> appendChild($ text);
$ song1 = $ dom-> createElement(title);
$ song-> appendChild($ song1);
//创建文本节点
$ text = $ dom-> createTextNode($ tokenized);
$ song1-> appendChild($ text);
$ tokenized = strtok($ tokens);
$ song1 = $ dom-> createElement(location);
$ song-> appendChild($ song1);
$ text = $ dom-> createTextNode($ tokenized);
$ song1-> appendChild($ text);

$ b $ // save
$ dom-> save(playlist.xml);
?>
< object data =musicplayer.swf?autostart = true& playlist = playlist.xmltype =application / x-shockwave-flashwidth =400height =300>< param name =movievalue =musicplayer.swf?autostart = true& playlist = playlist.xml/>< / object>




{sample playlist.xml}

<?xml version =1.0?>
< track>< track>< track>< ;< title> Ey Yavo< / title>< location> / telugusongs / prayanam / Ey Yavo.mp3< / location>< / track>< track>< creator> www.musicking.in< / creator> < title> Meghamaa< / title>< location> /telugusongs/prayanam/Meghamaa.mp3< / location>< / track>< track>< creator> www.musicking.in< / creator><< ;标题> Nuvvu Entha< / title>< location> / telugusongs / prayanam / Nuvvu Entha.mp3< / location>< / track>< / trackList>< / playlist>


解决方案

貌似你总是使用文件playlist.xml,所以如果有10K个访问者单个文件被覆盖10K次。通常没有问题,但互联网是缓慢的,所以如果一个点击你的网站,XML生成和瑞士法郎加载,然后使用XML。有延迟,它可能会出现问题,如果一个点击之前,他的球员加载另一个创建一个XML。
我建议你使用一个变量文件名(可以是一个随机的)
U可能需要一次性清理旧文件。


Actually in my website www.musicking.in when the user selects songs one player window will open and that will access the corresponding selected songs xml playlist and the player will play those songs.

actually its working fine. but sometimes the problem is when so many users are accesiing the player not playing the songs selected, either its playing songs previously he selected or nothing.

please help me.

{my player code}

<?php
if(isset($_POST["song"])&& $_POST['song'] != "") 
    {
        $song = $_POST["song"];
    }
    else {$song=array();} 

$dom = new DOMDocument("1.0");
// display document in browser as plain text 
// for readability purposes

// create root element
$root = $dom->createElement("playlist");
$dom->appendChild($root);
$root->setAttribute('version', "1");
$root->setAttribute('xmlns', "http://xspf.org/ns/0/");
$rootnext = $dom->createElement("trackList");
$root->appendChild($rootnext);
foreach ($song as $counter) {
    $tokens = ",";
    $tokenized = strtok($counter, $tokens);
// create child element

$song = $dom->createElement("track");
$rootnext->appendChild($song);
$song1 = $dom->createElement("creator");
$song->appendChild($song1);
$text = $dom->createTextNode("www.musicking.in");
$song1->appendChild($text); 
$song1 = $dom->createElement("title");
$song->appendChild($song1);
// create text node
$text = $dom->createTextNode($tokenized);
$song1->appendChild($text); 
$tokenized = strtok($tokens);
$song1 = $dom->createElement("location");
$song->appendChild($song1);
$text = $dom->createTextNode($tokenized);
$song1->appendChild($text); 

}
// save 
$dom->save("playlist.xml");
?>
<object data="musicplayer.swf?autostart=true&playlist=playlist.xml" type="application/x-shockwave-flash" width="400" height="300"><param name="movie" value="musicplayer.swf?autostart=true&playlist=playlist.xml"/></object>




{sample playlist.xml}

<?xml version="1.0"?>
<playlist xmlns="http://xspf.org/ns/0/" version="1"><trackList><track><creator>www.musicking.in</creator><title>Ey Yavo </title><location>/telugusongs/prayanam/Ey Yavo.mp3</location></track><track><creator>www.musicking.in</creator><title>Meghamaa </title><location>/telugusongs/prayanam/Meghamaa.mp3</location></track><track><creator>www.musicking.in</creator><title>Nuvvu Entha </title><location>/telugusongs/prayanam/Nuvvu Entha.mp3</location></track></trackList></playlist>

解决方案

looks like you always use the file playlist.xml, and so if there are 10k visitors that single file is overwritten 10k times. Usually no problem but the internet is slow and so if one clicks ur site, the xml is generated and the swf is loaded which then uses the xml. There are delays in it and it might come to problems if one clicks and before his player loaded another one created an xml. I sugguest u use a variable filename (could be a random one) U might have to clean up the old files time after time

这篇关于播放列表中的问题,当我们选择不同的歌曲的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆