上传的视频无法在浏览器中播放

时间:2014-02-17 06:06:35

标签: php video browser

我正在构建一个网站。我希望用户可以随时上传视频和播放。

我可以上传视频。但是,当我想播放那个或任何(其他视频)时,它也不能在浏览器中播放。我知道一些我出错的地方却无法找到问题。

这是我上传视频的代码:

<form action="video.php" method="post"  enctype="multipart/form-data">
<span> Add Video's here</span>
<p>
    <label>Give a caption to the video</label>
    <input type="text"  name="caption" title="caption">
</p>
         <input type="file" name="file" id="files" value="Upload Photo" style="border:0">
        <input type="submit" name="Upload" id="uploadph" value="Upload video">


</form>

PHP代码video.php:

$allowedExts = array("avi","wmv","mp4");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
$filename=$_FILES["file"]["name"];
$filepath=$path.$filename;
echo $filepath; 

if (($_FILES["file"]["type"] == "video/x-ms-wmv")
||($_FILES["file"]["type"] == "video/avi")
|| ($_FILES["file"]["type"] == "video/mp4")
&& in_array($extension, $allowedExts))
  {
   echo"1";
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
   echo"sdfsd";
    }
  else
    { 
       echo"2";
       move_uploaded_file($_FILES["file"]["tmp_name"],
      "uploads/".$filename);
       echo "Stored in: " . "upload/" . $_FILES["file"]["name"];

    }

正在upload文件夹中上传。当我想要播放它时,它不会播放。

播放视频的代码:

<html>
<body>
<video width="320" height="240" controls="true" scale="aspect"><source src="upload/test.avi" height="100" width="100"></video>

</body>
</html>

请任何人帮助我。

谢谢。

3 个答案:

答案 0 :(得分:2)

<!-- BEGIN GENERIC ALL BROWSER FRIENDLY HTML FOR WINDOWS MEDIA PLAYER -->

<object id="MediaPlayer1" width="150" height="170"
classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"
standby="Loading Microsoft® Windows® Media Player components..."
type="application/x-oleobject" align="middle">
<param name="FileName" value="test.avi">
<param name="ShowStatusBar" value="True">
<param name="DefaultFrame" value="mainFrame">
<param name="autostart" value="false">
<embed type="application/x-mplayer2"
pluginspage = "http://www.microsoft.com/Windows/MediaPlayer/"
src="upload/test.avi"
autostart="false"
align="middle"
width="150"
height="170"
defaultframe="rightFrame"
showstatusbar="true">
</embed>
</object>

答案 1 :(得分:0)

如果您使用id获取视频,则意味着您可以像这样使用

<?php
    if(empty($_GET[id]) OR !is_numeric($_GET[id])){
      echo 'Error';
    }else{
      $query=msyql_query("SELECT id,name,file FROM videos WHERE id='" . $_GET[id] . "' LIMIT 1");
      if(mysql_num_rows($query)==0){
        echo 'Error.';
      }else{
        $vid=mysql_fetch_object($query);
        $file=$vid->file;
        // put here your html
      }
    }
    ?>

答案 2 :(得分:0)

确保您可以使用直接链接在任何浏览器中播放视频,您的浏览器可能不支持AVI。 http://diveintohtml5.info/video.html

您希望拥有多种视频格式以确保广泛覆盖,您也可以考虑使用以下内容:http://mediaelementjs.com/