如何使用php和mysql创建视频上传和回放文件

时间:2015-04-14 03:53:29

标签: php mysql

我有以下代码允许我将文件上传到数据库,但我无法在html页面上播放该文件:

<!DOCTYPE html>
<html>
<head>


<link href="site.css" rel="stylesheet">
<title>A</title>

<meta http-equiv="content-type" content="text-html; charset=utf-8">
</head>
<body style="background-color:black">

<?php

define('DB_Name', 'gaufensr_abs3x');
define('DB_User', 'gaufensr_owner');
define('DB_Password', 'Mlee@0407');
define('DB_Host', 'localhost');

$link = mysql_connect(DB_Host, DB_User, DB_Password);

if (!$link) {
      die('could not connect:' . mysql_error());

}

$db_selected = mysql_select_db(DB_Name, $link);

if (!@db_selected) {
    die('can\t use' . DB_Name. ': ' . mysql_error());

}

echo 'CONNECTED SUCCESSFULLY';

$value = $_Post['submit'];

$sql = "INSERT INTO videos (video_name) VALUES ('$value')";

if (!mysql_query($sql)) {
     die('ERROR: ' .mysql_error());

}

mysql_close();

?>

<?php

if (isset($_GET['id']))
{
      $id = $_GET['id'];
      $query = mysql_query("SELECT * FROM 'videos' WHERE id='$id'");
       while($row = mysql_fetch_assoc($query))
       {
             $id = $row['id'];
         $video_name = $row['video_name'];      
       }

    echo "You are watching " .$video_name. "<br />";
    echo "<embed src='$id' width='560' height='315'></embed>";

}

else
{

   echo "Error!";

}

?>


</body>
</html>

当我上传文件时,我收到以下错误:CONNECTED SUCCESSFULLY错误! 我只是在学习php和mysql;任何帮助都会很棒。在此先感谢你们。

1 个答案:

答案 0 :(得分:2)

首先,您使用了不正确的identifiers作为常规单引号。

FROM 'videos'

那些应该是滴答或者根本不是。

FROM `videos`

使用or die(mysql_error())mysql_query()会发出语法错误信号。


旁注:您目前的代码向SQL injection开放。使用mysqli with prepared statementsPDO with prepared statements他们更安全


然后这个应该是大写$_Post的{​​{1}}是一个超全局。

另外,您现在使用$_POST过早关闭数据库连接。

  • 在您的查询后,在代码末尾放置它。这可能会产生不利影响。

您的条件陈述mysql_close();也可以参与其中。


error reporting添加到文件的顶部,这有助于查找错误。

if (isset($_GET['id'])){...}

旁注:错误报告应仅在暂存时完成,而不是生产。