我有以下代码允许我将文件上传到数据库,但我无法在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;任何帮助都会很棒。在此先感谢你们。
答案 0 :(得分:2)
首先,您使用了不正确的identifiers作为常规单引号。
FROM 'videos'
那些应该是滴答或者根本不是。
FROM `videos`
使用or die(mysql_error())
到mysql_query()
会发出语法错误信号。
旁注:您目前的代码向SQL injection开放。使用mysqli
with prepared statements或PDO with prepared statements,他们更安全。
然后这个应该是大写$_Post
的{{1}}是一个超全局。
另外,您现在使用$_POST
过早关闭数据库连接。
您的条件陈述mysql_close();
也可以参与其中。
将error reporting添加到文件的顶部,这有助于查找错误。
if (isset($_GET['id'])){...}
旁注:错误报告应仅在暂存时完成,而不是生产。