php - 在 PHP 中用新内容替换旧内容

标签 php jquery

我正在开发视频播放器,其中 XML 是我的播放列表。这是代码:

$crxml=file_get_contents('http://spoti.com/latest.xml/?lang=en');    
   $rss=new SimpleXMLElement($crxml);
  $playlistitem=1;
foreach($rss->channel->item as $post)

if($playlistitem<=8)

echo '<ul>';
echo '<li class="xtitle">'.$post->title.'</li>';
echo '<li class="xdesc">'.$post->description.'</li>';    
$dc=$post->children('http://search.yahoo.com/mrss/');
echo '<li class="xthumb">'.$dc->thumbnail->attributes()->url.'</li>';
echo '<li class="xpreview">'.$dc->thumbnail->attributes()->url.'</li>'; 
echo '<li class="xsources_mp4">'.$dc->content->attributes()->url.'</li>';
$dc->content->attributes()->url=preg_replace('/.mp4/','.webm',$dc->content-attributes()->url);
 echo '<li class="xsources_webm">'.$dc->content->attributes()->url.'</li>';
 echo '</ul>';
$playlistitem++;

当用户单击“语言”时,我想用新内容替换旧内容,所有条目都会替换为新条目

最佳答案

一个例子

if(isset($_POST["lang"]))
    {
       $lang = $_POST["lang"];
    } else {
       $lang = "eng";
    }
$crxml=file_get_contents('http://spoti.com/latest.xml/?lang='.$lang);    
$rss=new SimpleXMLElement($crxml);
$playlistitem=1;

foreach($rss->channel->item as $post) {
    if($playlistitem<=8) {
        echo '<ul id="playlist">';
        echo '<li class="xtitle">'.$post->title.'</li>';
        echo '<li class="xdesc">'.$post->description.'</li>';    
        $dc=$post->children('http://search.yahoo.com/mrss/');
        echo '<li class="xthumb">'.$dc->thumbnail->attributes()->url.'</li>';
        echo '<li class="xpreview">'.$dc->thumbnail->attributes()->url.'</li>';
        echo '<li class="xsources_mp4">'.$dc->content->attributes()->url.'</li>';
        $dc->content->attributes()->url=preg_replace('/.mp4/','.webm',$dc->content-attributes()->url);
        echo '<li class="xsources_webm">'.$dc->content->attributes()->url.'</li>';
        echo '</ul>';
        $playlistitem++;
    }
}

然后在页面上的 jQuery 中,有一个名为 #langSelect 的语言选择框

$('#langSelect').change( function() {
    var langSelected = $(this).val();

    $("#playlist").load("<?php echo $_SERVER['PHP_SELF']."?uid=".time(); ?> #playlist", {lang: langSelected});
});
<小时/>

要调试,请尝试使用此:

$('#lang').change( function() {
    var langSelected = $(this).val();
    alert('Selected language: '+langSelected);
    var url = '<?php echo $_SERVER['PHP_SELF']."?uid=".time(); ?>';
    alert('Ajax POST URL is: '+ url);
    $("#playlist").load(url+" #playlist", {lang: langSelected}, function(response, status, xhr) {
            alert(status);
            alert(response);
        }
    });
});

关于php - 在 PHP 中用新内容替换旧内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10129053/

相关文章:

php - 未捕获的类型错误 : Datatables

javascript - AngularJS - 检查用户是否经过身份验证,然后将其路由到正确的页面

javascript - 多重选择与多重 this

javascript - jQuery 的 val() 不适用于隐藏字段

可视化 Web 部件中的 JQuery SharePoint Foundation

php - Zend 框架 : How to give specific order to javascript files and scripts

php - 评估目的 | SQL转换?

php - 瓢虫调试器的一些功能在 symfony2 php 应用程序中不起作用

jquery - Bootstrap 4 与 wordpress jquery

javascript - 如何在 laravel 中使用 jquery 从数据库中获取特定行并将其绑定(bind)到文本框字段