Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中用新内容替换旧内容_Php_Jquery - Fatal编程技术网

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

在PHP中用新内容替换旧内容,php,jquery,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>'; ech

我正在开发视频播放器,其中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++;
$crxml=file\u get\u contents('http://spoti.com/latest.xml/?lang=en');    
$rss=新的simplexmlement($crxml);
$playlitem=1;
foreach($rss->channel->itemas$post)
如果($playitemtitle.”;
回显“
  • ”。$post->说明。“
  • ”; $dc=$post->children($dc)http://search.yahoo.com/mrss/'); 回显“
  • ”.$dc->缩略图->属性()->url.
  • ”; echo'
  • 。$dc->thumbnail->attributes()->url.
  • ; echo“
  • ”。$dc->content->attributes()->url.
  • ; $dc->content->attributes()->url=preg_replace('/.mp4/'、'.webm',$dc->content-attributes()->url); echo“
  • ”。$dc->content->attributes()->url.
  • ”; 回声“”; $item++;
    当用户单击语言时,我想用新内容替换旧内容所有条目都替换为新条目,例如

    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++;
        }
    }
    
    if(isset($\u POST[“lang”]))
    {
    $lang=$_POST[“lang”];
    }否则{
    $lang=“eng”;
    }
    $crxml=文件\u获取\u内容('http://spoti.com/latest.xml/?lang=“$朗);
    $rss=新的simplexmlement($crxml);
    $playlitem=1;
    foreach($rss->channel->itemas$post){
    如果($playitemtitle.”;
    回显“
  • ”。$post->说明。“
  • ”; $dc=$post->children($dc)http://search.yahoo.com/mrss/'); 回显“
  • ”.$dc->缩略图->属性()->url.
  • ”; echo'
  • 。$dc->thumbnail->attributes()->url.
  • ; echo“
  • ”。$dc->content->attributes()->url.
  • ; $dc->content->attributes()->url=preg_replace('/.mp4/'、'.webm',$dc->content-attributes()->url); echo“
  • ”。$dc->content->attributes()->url.
  • ”; 回声“”; $item++; } }
    然后在页面的jQuery中有一个选择框,其中包含名为#langSelect的语言

    $('#langSelect').change( function() {
        var langSelected = $(this).val();
    
        $("#playlist").load("<?php echo $_SERVER['PHP_SELF']."?uid=".time(); ?> #playlist", {lang: langSelected});
    });
    
    $('#langSelect')。更改(函数(){
    var langSelected=$(this.val();
    $(“#playlist”).load(“#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);
            }
        });
    });
    
    $('#lang')。更改(函数(){
    var langSelected=$(this.val();
    警报(“所选语言:”+所选语言);
    var url='';
    警报('Ajax POST URL为:'+URL);
    $(“#播放列表”).load(url+“#播放列表”,{lang:langSelected},函数(响应,状态,xhr){
    警报(状态);
    警报(响应);
    }
    });
    });
    
    一个例子

    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++;
        }
    }
    
    if(isset($\u POST[“lang”]))
    {
    $lang=$_POST[“lang”];
    }否则{
    $lang=“eng”;
    }
    $crxml=文件\u获取\u内容('http://spoti.com/latest.xml/?lang=“$朗);
    $rss=新的simplexmlement($crxml);
    $playlitem=1;
    foreach($rss->channel->itemas$post){
    如果($playitemtitle.”;
    回显“
  • ”。$post->说明。“
  • ”; $dc=$post->children($dc)http://search.yahoo.com/mrss/'); 回显“
  • ”.$dc->缩略图->属性()->url.
  • ”; echo'
  • 。$dc->thumbnail->attributes()->url.
  • ; echo“
  • ”。$dc->content->attributes()->url.
  • ; $dc->content->attributes()->url=preg_replace('/.mp4/'、'.webm',$dc->content-attributes()->url); echo“
  • ”。$dc->content->attributes()->url.
  • ”; 回声“”; $item++; } }
    然后在页面的jQuery中有一个选择框,其中包含名为#langSelect的语言

    $('#langSelect').change( function() {
        var langSelected = $(this).val();
    
        $("#playlist").load("<?php echo $_SERVER['PHP_SELF']."?uid=".time(); ?> #playlist", {lang: langSelected});
    });
    
    $('#langSelect')。更改(函数(){
    var langSelected=$(this.val();
    $(“#playlist”).load(“#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);
            }
        });
    });
    
    $('#lang')。更改(函数(){
    var langSelected=$(this.val();
    警报(“所选语言:”+所选语言);
    var url='';
    警报('Ajax POST URL为:'+URL);
    $(“#播放列表”).load(url+“#播放列表”,{lang:langSelected},函数(响应,状态,xhr){
    警报(状态);
    警报(响应);
    }
    });
    });
    
    除非您使用的是传统的往返表单提交系统,否则您需要一些Javascript来重写标记内容。好吧,什么不起作用?您真正想要的结果是什么。就像交换语言和旧行以淡出一样?@MaxAllan Yes当用户从选择选项中选择语言时,语言会发生变化事实上,如果你在做一个传统的往返表单提交系统,你需要一些Javascript来重写标记内容。那么,什么不起作用?你真正想要的结果是什么。比如交换语言和旧的行以消失?@MaxAllan是,当用户从选择选项中选择语言,然后更改语言s automaticallycode是正确的,但在我更改语言时,播放列表中没有显示任何内容。HMMM您能看到它加载页面吗(通过firebug/fiddler)?我想这可能是缓存问题,因此它可能有助于将当前时间添加到请求url。用时间戳更新了代码。-是的,我看到页面没有加载。当我更改选项的选择时,也没有发生任何事情。您在选择框上有一个带有
    #langSelect
    的ID,对吗?还要检查ajax调用中的PHP是否正在输出正确..可能粘贴您得到的输出,然后我可能能够发现错误:)-我添加了上面的代码,您可以检查并找到错误。这将从您那里得到很大帮助。非常感谢您帮助我,代码是正确的,但在我更改语言时不会在播放列表中显示任何内容。HMMM您能看到它加载页面吗(通过firebug/fiddler)?我想这可能是缓存问题,因此可能有助于将当前时间添加到请求url。更新了带有时间戳的代码。-是的,我看到页面没有加载。当我更改选项选择时也没有发生任何事。您在选择框上有一个ID,带有
    #langSelect