【问题标题】:Not able to display video in PHP无法在 PHP 中显示视频
【发布时间】:2014-11-14 16:57:20
【问题描述】:

在我的网站上,用户可以上传视频。 我将这些视频存储在一个文件夹中,并将它们的路径存储在 mysql 数据库中。

我想从文件夹中检索该视频并在页面上显示。 该文件夹还包含图像。 我也在展示这些图像。 图像正在显示。而且视频只播放音频,不播放视频。而且,我的数据库中只有两个视频和一个图像。然后还显示了 3 个视频文件和 3 个图像,其中两个图像以替代文本显示。

以下是我在 PHP 中尝试过的代码:

if ($db_found) 
{
    $query ="SELECT * FROM `files`";        
    $result = mysql_query($query,$db_handle);   
    echo "<div class='product'>";
    while($row = mysql_fetch_array($result, MYSQL_ASSOC))
    {
        $src=$row['File'];
        echo "<img src='$src' height='200' width='200' alt='Image not Found'/>";
        echo "<video width='200' height='200' autoplay controls>
              <source src='$src' type='video/mp4'>
              </video>";
    }
    echo "</div>";
}

【问题讨论】:

  • 你怎么知道你的视频编码正确?
  • 您正在为视频和图像使用 SAME src。您究竟希望&lt;source src="kittens.jpg"&gt; 如何工作?图片不是视频。
  • 这听起来不像是 php 的问题。这是您的浏览器对 html5 视频标签的支持、文件本身或存储视频的服务器的问题。
  • 那么你能告诉我如何显示存储在同一文件夹中的所有图像和视频。
  • @marc - 搞笑!我什至没有注意到这一点。但是,当它们不是 jpg 时,他只能获取音频。除非视频编码不正确,否则我自己从未遇到过这种情况。

标签: php html video


【解决方案1】:

您需要检查哪些是视频,哪些是图像,使用类似:

 $src=$row['File'];

        if (preg_match("/\.jpg$/i",$src)){

            echo "<img src='$src' height='200' width='200' alt='Image not Found'/>";

        }else{

             echo "<video width='200' height='200' autoplay controls> <source src='$src' type='video/mp4'> </video>";

        }

编辑

哦,请停止使用已弃用的mysql functions

选择一种更现代的连接数据库的方法

【讨论】:

  • 感谢它有效但不完全。它只播放音频,不播放视频。
  • 如其他人所说,检查视频编码,您可以直接在html5浏览器中打开视频文件进行测试
【解决方案2】:

您确实应该(至少)添加一些方法来分隔视频和图像。例如,files 表中的第二列会告诉您相关文件是视频还是图像。

然后你可以简单地做这样的事情:

SELECT * FROM `files` WHERE `filetype` == 1

其中 1 = 图片,2 = 视频等。

那么你就可以随意处理这个数组了:

<?php
foreach($images as $image) { ?>
    <img src='<?= $image["src" ?>' alt=''>
<?php } ?>

<?php
foreach($videos as $video) { ?>
  <video id="video" preload="auto" autoplay="autoplay">
    <source src="<?= $video["src"] ?>.mp4">
  </video>
<?php } ?>

注意:您的视频中仅播放音频这一事实与您的代码无关。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多