如何使用php SCANDIR函数来显示可以交互的目录列表(例如,如果视频然后点击播放)?



我有一对html按钮在一个。php页面应该显示文件从目录中包含。mp4/视频文件。我遇到了SCANDIR函数,该函数正在工作并显示目录中的文件。

然而,我需要的清单是交互式的,如点击播放视频(类似于一个href超链接)。目前,显示的列表只是纯文本。

我只需要列表有一个超链接到实际的视频文件,我计划在另一个html-div内播放。

git的代码库:https://github.com/psedha10/Craigs-Music-Player

//from index.php
<button class="button-left" onclick="showLatestHits()"> Latest Hits</button>
<p id="song_genre"></p>
function php_func_LatestHits()
{
$dir = 'music/Latest Hits';
$files = scandir($dir);
foreach ($files as $value) {
if ('.' !== $value && '..' !== $value && '.DS_Store' !== $value) {
echo "<br><br>" . $value;
}
}
}
<script>
var result_LatestHits = "<?php php_func_LatestHits(); ?>"
</script>

//from index.js
function showLatestHits() {
document.getElementById("song_genre").innerHTML = result_LatestHits;
}

我现在找到了答案。给定的代码在点击播放按钮和标题/文件名后生成视频文件。但是,它不使用scandir。它使用PHP的opendir和readdir函数。

//HTML Button
<a class="button-left" href="index.php?5060=true"> 50's + 60's </a>
//PHP function 
<?php
function php_func_5060()
{
$dir = 'music/Fifty Sixty';
$videodir = opendir($dir);
while (false !== ($filename = readdir($videodir))) {
if ('.' !== $filename && '..' !== $filename && '.DS_Store' !== $filename) {
echo '<img src="' . $dir . "/" . $filename . '" width="100" height="100"> ';
echo '<a href="' . $dir . "/" . $filename . '" target="yt"> Play </a>';
echo "<li style='list-style-type: decimal'><a> $filename </a></li><br>";
echo '<br><br>';
}
}
}

if (isset($_GET['5060'])) {
php_func_5060();
}
?>
//HTML seperate div that loads video using iframe from above link
<div class="bottom-middle-block">
<iframe name='yt' style="width: 100%; min-height: 100%" frameborder="0"></iframe>
</div>

需要注意的是iframe需要在单独点击play后被点击,即需要添加自动播放。而且,用于显示缩略图的img src本身会播放整个视频,而不会像小gif那样发出声音。静态图片需要修改

相关内容

  • 没有找到相关文章

最新更新