在网页上显示shoutcast xml数据时出现问题

在网页上显示shoutcast xml数据时出现问题

我不知道如何操作 xml 数据。我想使用我的广播统计页面中的一些数据。我可以通过以下方式访问它:http://address:port/statistics

我似乎无法找到从我创建/修改的页面访问此内容的方法。不久前我发帖称访问 mysql 时出现问题,但最终在评论的帮助下解决了这个问题,所以我希望有人能给我指明正确的方向。 在此处输入图片描述

<a href="javascript:songinfo(<?php echo $comingSong->ID; ?>)" title="<?php echo $comingSong->artist_title; ?>">
<?php echo $comingSong->title; ?>
<?php if(!empty($comingSong->artist)) : ?> <br />by <?php echo $comingSong->artist; ?> <?php endif; ?>
</a>
<?php if($comingSong->isRequested): ?>
    ~requested~
<?php endif; ?>
<?php endforeach; ?>
    </td>
        <td align="right" valign="bottom" colspan="2">

         <!-- this is broken in the program -->

        <?php if (!empty($currentSong) && $currentSong->listeners > 0): ?>
        <div id="listener_count">Listening: <br /><?php echo $currentSong->listeners; ?></div>
         <?php endif; ?>

         <!-- I need to access shoutcastaddress:port/statistics xml file 
         and print the <CURRENTLISTENERS></CURRENTLISTENERS> value here
         to replace the code/value that the program no longer supplies. 
         haven't had any luck -->
                            </td>
                        </tr>
                    </tbody>

我搜索过,但找不到任何显示连接或获取 xml 数据的迹象。我尝试过 w3school XML Tutorial 上的代码,但似乎找不到任何“适合”他们的代码显示“文件”(example.xml)的东西,即使是那些据称从 URL 调用的文件。他们仍然显示 /example.xml(带有 xml 扩展名).. 但 screamcast 没有 .xml .. 它只有一个“统计数据”我尝试了两者,http://shoutcast:port/statisticshttp://shoutcast:port/statistics.xml使用他们的代码无法获得任何输出。我真的不想泄露我的服务器信息,但如果有人想弄清楚某件事并想测试它,他们可以使用这个服务器.. 我从 screamcasts 页面获得它.. 这是一个公共站点。https://hazel.torontocast.com:2280/statistics

答案1

经过一番努力,弄清楚了我不知道的新安全问题后,我终于能够进行某种活动。然后我做了各种研究,最终走向了一个完全不同的方向。我发现,shoutcast 在他们的服务器上提供了一个名为 7.html 的文件。我决定使用它而不是 xml 输出。代码可能不是实现这一点的最漂亮或最好的方法,但它有效。 在此处输入图片描述

        <td align="right" valign="bottom" colspan="2">
                <?php require_once('../config/shoutcast-conf.php');
                      $conn = array(
                          'http'=>array(
                                'method'=>"GET",
                                'header'=>"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" 
                                )
                        );
                        $context = stream_context_create($conn);
                        $stats = file_get_contents('https://' . $site . ':' . $port . '/7.html', false, $context);
                        $split = preg_split("/[,]+/", $stats, 7);
                        $listeners = $split[0];
                        ?>
                        <span class="auto-style4">Listening:</span> <?php echo $listeners ?> 
        </td>

这可能对某些人有用。通过它,您可以访问以下统计数据:当前听众:$split[0],可用流:$split1、峰值听众:$split[2]、最大用户数:$split[3]、唯一听众:$split[4]、比特率:$split[5] 和艺术家 - 歌曲:$split[6]

相关内容