我试图在我的页面上保存和显示视频。视频保存到我的目录和名称,url保存在我的数据库中。 我将在watch.php页面上显示我的视频。但问题是视频没有播放。我做错了什么。帮帮我
**index.php:**
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db("websites", $conn);
if(isset($_POST['submit']))
{
$name=$_FILES['file']['name'];
$temp=$_FILES['file']['tmp_name'];
move_uploaded_file($temp,"uploaded/".$name);
$url="http://127.0.0.1/PHP/video%20upload%20and%20playback/uploaded /$name";
mysql_query("insert into video value('$name','$url') ");
}
&GT;
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Video Upload and Playback</title>
<link rel="stylesheet" href="style.css"/>
</head>
<body>
<div id="box">
<form action="index.php" method="POST" enctype="multipart/form-data">
Select Video: <br/>
<input type="file" name="file" />
<input type="submit" name="submit" value="Upload" />
</form>
<?php
if(isset($_POST['submit']))
{
echo "<br />".$name."has been uploaded";
}
?>
</div>
<div id="box">
<h3>List of videos</h3>
<?php
$query=mysql_query("select * from video");
while($row=mysql_fetch_assoc($query)){
$name=$row['name'];
$url=$row['url'];
echo "<a href='watch.php?name=$name'>$url</a> <br />";
}
?>
</div>
</body>
</html>
这是我的视频显示页面 的 watch.php:
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db("websites", $conn);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Watch videos</title>
</head>
<body>
<?php
if(isset($_GET['name']))
{
$name=$_GET['name'];
$query=mysql_query("select * from video where name='$name'");
while($row=mysql_fetch_assoc($query))
{
$name=$row['name'];
$url=$row['url'];
}
echo "You are watching ".$name."<br />";
echo "<embed src='$url' width='560' height='315'></embed>";
}
else
{
echo "Error !";
}
?>
</body>
</html>
这是我的css文件。 的的style.css: 身体 { 背景:#222; 颜色:#fff; font-family:Tahoma; font-size:12px; }
#box{
background: #333;
padding: 10px;
width: 50%;
margin: 50px auto;
}
input{
background: #444;
color: #fff;
border: 0px;
padding: 10px;
margin: 5px 0px;
}
a{
text-decoration: none;
color: #fff;
}
#url{
background: #444;
padding: 10px;
margin: 5px;
}
答案 0 :(得分:1)
删除文件夹名称“已上传”后的空格
move_uploaded_file($temp,"uploaded/".$name);
$url="http://127.0.0.1/PHP/video%20upload%20and%20playback/uploaded/$name";
答案 1 :(得分:0)
在watch.php中,您的嵌入代码不在循环中:
while($row=mysql_fetch_assoc($query))
{
$name=$row['name'];
$url=$row['url'];
}
echo "You are watching ".$name."<br />";
echo "<embed src='$url' width='560' height='315'></embed>";
尝试将其更改为此
while($row=mysql_fetch_assoc($query))
{
$name=$row['name'];
$url=$row['url'];
echo "You are watching ".$name."<br />";
echo "<embed src='$url' width='560' height='315'></embed>";
}
PS.formatting似乎不起作用,但你明白我的观点,只需将花括号移到这些&#34; echos&#34;下面。
所以现在embed代码在循环中,它将知道$ name是什么。
如果这些都不起作用,请发布您获得的错误或结果,我们会进一步解决。顺便说一句,这段代码可以简单得多。