使用MySql和php获取视频

使用MySql和php获取视频,php,html,mysql,video,upload,Php,Html,Mysql,Video,Upload,我在一个网站上工作,该网站会接收用户上传的视频,并将名称,大小,类型,路径,以及tmp_名称放入MySQL数据库。下面是upload.php文件 <?php $is_form_submitted = (isset($_POST['submit']))?true:false; if($is_form_submitted) { //defines variables $name=$_FILES['file']['name'];

我在一个网站上工作,该网站会接收用户上传的视频,并将
名称
大小
类型
路径
,以及
tmp_名称
放入MySQL数据库。下面是
upload.php
文件

<?php 

$is_form_submitted =  (isset($_POST['submit']))?true:false;

    if($is_form_submitted)
    {
        //defines variables
        $name=$_FILES['file']['name'];
        $type=$_FILES['file']['type'];
        $size=$_FILES['file']['size'];
        $tmp_name=$_FILES['file']['tmp_name'];
        $target_path="videos/";


        $allowedTypes   = array("video/wmv","video/avi",
         "video/mpeg","video/mpg","video/mp4");
        $is_valid_type  = (in_array($_FILES['file']['type'],                           $allowedTypes))?true:false;
       if ( $is_valid_type&& ($_FILES["file"]["size"] < 20000000000))
      {
        if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
        }
        else
        {
        echo "Upload:&nbsp; " . $_FILES["file"]["name"] . "<br>";
        echo "Type:&nbsp; " . $_FILES["file"]["type"] . "<br>";
        echo "Size:&nbsp; " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
        echo "Temp file:&nbsp; " . $_FILES["file"]["tmp_name"] . "<br>";
        mysql_query("INSERT INTO vids(name, type, size, tmp_name, target_path)
        VALUES('$name', '$type', '$size', '$tmp_name', '$target_path')");

        if (file_exists("images/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "videos/" . $_FILES["file"]["name"]);
          echo "Stored in: " . "videos/" . $_FILES["file"]["name"];
          }
        }
      }
    else
    {
      echo "Invalid file";
    }

    }
?> 


我存储视频的地方是一个名为videos的目录

我找到了它,以防有人想引用它

<?php    
    //Connects to database
    $host="################"; // Host name
    $username="##########"; // Mysql username
    $password="###########"; // Mysql password
    $db_name="#######"; // Database name
    $tbl_name="####"; // Table name

    // Connect to server and select databse.
    mysql_connect("$host", "$username", "$password")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");
    //Tells variable video where to get the name from
    $vid_url = "videos/";
        $result = mysql_query("SELECT * FROM vids ORDER BY RAND() LIMIT 1");
    $row = mysql_fetch_assoc($result);
    $video = $vid_url.$row["name"];
<?

嘿,你的mysql查询是jibberish。。。您应该有类似于“SELECT*FROM
vids
WHERE
{some column}
={some value}”的内容。。。至于选择一个随机视频,我建议使用一个增量列作为vid_id,然后选择一个随机vid_id为什么要存储临时名称?临时文件退出时将被PHP删除,无论您是否将其存储在其他位置。我将其存储为引用,@brendanmorrison,我如何知道某个列和某个值是什么?您可以使用{some_column}和{some_value}与任何列相对应,例如,如果您上传了一个名为my_test的视频,则查询可能如下所示:“从
vids
中选择*,其中
名称
=
my_test
”,或者如果您只想查找任何视频,则可以执行“从
vids
中选择*,按
DESC LIMIT 1排序”这将返回表中按大小排列的最大视频,正如我还提到的,向表中添加一个自动递增的列(称为vid_id)可能是一个好主意,因此每个视频都有一个特定的id,以帮助轻松地选择它们或将其保留为每个用户的参考,但这只是一个主意。我有一个自动递增的id列,我正在尝试要实现这一点,需要获取一个随机id(可以抓取一个随机视频),然后在播放器中显示它
<?php    
    //Connects to database
    $host="################"; // Host name
    $username="##########"; // Mysql username
    $password="###########"; // Mysql password
    $db_name="#######"; // Database name
    $tbl_name="####"; // Table name

    // Connect to server and select databse.
    mysql_connect("$host", "$username", "$password")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");
    //Tells variable video where to get the name from
    $vid_url = "videos/";
        $result = mysql_query("SELECT * FROM vids ORDER BY RAND() LIMIT 1");
    $row = mysql_fetch_assoc($result);
    $video = $vid_url.$row["name"];
<?