1

我目前正在试验 HTML5 视频,看看它是否比 flash 更好。我正在构建的网站目前为每个视频使用单独的页面(所有内容都是由我上传的,因此不需要上传脚本),但我想知道如何使用 PHP 和 MySQL 制作单个“观看页面”。我希望这个页面是独立的,因为我现在不需要任何其他用 PHP 编码的东西,所以我的其余页面可以使用扩展名 .html

我可以轻松地设置数据库(服务器端,填充它们是我不太熟悉的东西)。如果已经存在一个完整的网站,我不需要一个完整的网站,但是很难找到适合谷歌搜索的措辞(我一直在寻找 PHP 视频教程)。

<!DOCTYPE html>
<html>
<head>
<title>Video Title - FTVO</title>
<meta charset="UTF-8">
</head>
<body>
<h2>Video Title</h2>
<p>Watch this episode using the player below</p>
<h3>Getting a "Unsupported" error? Fix it by upgrading your browser. We recommend Firefox.</h3>
<a href="http://www.mozilla.org/en-US/firefox/new/"><img src="images/firefoxbanner.png"   alt="FirefoxBanner"/></a>
<br />
<video width="640" height="480" controls>
<source src="videos/e1.webm" type="video/webm">
Your Browser Doesn't Support this Element
</video>
<hr>
<p>This site is property of <b>TechXtra Web Services</b></p>
</body>
</html>
4

4 回答 4

2

是的,您可能需要一个数据库才能按照您想要的方式进行这项工作。假设您的页面被调用example.com,并且地址中有一个视频example.com/watch.php?video-id=123,您希望在watch.php PHP脚本中执行以下操作:

一、检索video-id GET参数

$videoId = $_GET['video-id'];

然后查询您的数据库以获取有关视频的信息(我强烈建议为此使用PDO )

$mysqli = new mysqli($host, $user, $pass, $db);
$sql = "
       SELECT id, title, src
       FROM videos
       WHERE id = $videoId
       LIMIT 1
";
$result = $mysqli->query($sql);
$video = mysqli_fetch_array($result, MYSQLI_ASSOC);
mysqli_close($mysqli);

然后显示相应的 HTML

<title><?= $video['title']; ?></title>

<source src="videos/<?= $video['src']; ?>" type="video/webm">

<!-- Whatever else you need to display -->
于 2013-08-05T18:46:47.000 回答
0

我读了你的问题,我认为你想用你的所有视频制作一个单独的观看页面。如果独立播放器有一个播放列表,它可能没问题。我建议你可以使用一些你不需要学习 PHP 和 MYSQL 的 js 库。我找到了这个图书馆

http://mediafront.org/osmplayer/#.Uf_wrzmy_Dc

我认为它非常易于使用。您可以下载它,然后您可以在您的 html 页面中像这样修改您的代码。

<!DOCTYPE html>
<html>
<head>
<title>Video Title - FTVO</title>
<meta charset="UTF-8">
<!-- Include the core jQuery and jQuery UI -->
<script type='text/javascript' src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script>

<!-- Include the core media player JavaScript. -->
<script type="text/javascript" src="osmplayer/bin/osmplayer.compressed.js"></script>

<!-- Include the DarkHive ThemeRoller jQuery UI theme. -->
<link rel="stylesheet" href="osmplayer/jquery-ui/dark-hive/jquery-ui.css">

<!-- Include the Default template CSS and JavaScript. -->
<link rel="stylesheet" href="osmplayer/templates/default/css/osmplayer_default.css">
<link rel="stylesheet" href="osmplayer/templates/default/osmplayer.default.js">
<script type="text/javascript">
    $(function() {
        $("#osmplayer").osmplayer({
            playlist: 'playlist.xml',
            width: '480px',
            height: '640px'
        });
    });
</script>
</head>
<body>
<h2>Video Title</h2>
<p>Watch this episode using the player below</p>
<div id="osmplayer"></div>
<hr>
<p>This site is property of <b>TechXtra Web Services</b></p>
</body>
</html>

对于您创建 XML 的播放列表,只需更改视频和图像的位置路径。

<?xml version="1.0" encoding="UTF-8"?>
    <playlist version="1" xmlns="http://xspf.org/ns/0/">
       <trackList>
          <track>
             <title>HTML5: Matagascar III</title>
             <location>http://progressive.totaleclips.com.edgesuite.net/105/e105598_257.mp4</location>
             <image>http://www.movieposter.com/posters/archive/main/143/MPW-71686</image>
          </track>
          <track>
             <title>HTML5: Snow White and the Huntsman</title>
                 <location>http://progressive.totaleclips.com.edgesuite.net/103/e103981_257.mp4</location>
             <image>http://www.movieposter.com/posters/archive/main/142/MPW-71148</image>
          </track>
          <track>
             <title>HTML5: Men in Black III</title>
             <location>http://progressive.totaleclips.com.edgesuite.net/105/e105857_257.mp4</location>
             <image>http://www.movieposter.com/posters/archive/main/146/MPW-73434</image>
          </track>
   </trackList>
</playlist>
于 2013-08-05T18:52:42.730 回答
0
<?php
  $videokey = $_REQUEST['key'];
  $connect = myqli_connect('localhost,'dbusername','dbpassword,'dbname');
  $SQL = "SELECT 'videoname' where videokey = $videokey ";
  $query = mysqli_query($SQL);
  $result = mysqli_fetch_array($query, MYSQLI_ASSOC);
?>
<html>
<body>
<video width="320" height="240" controls>
<source src="<?php echo $result["videoname"];?>" type="video/mp4">
</video>

我希望它能完成从包含两个名为 videokey 和 videoname 的列的 mysql 表中获取视频的基本工作。

于 2013-08-05T18:31:38.693 回答
-1

这是 youtube.com 视频嵌入 PHP 代码的方法:您可以在此处查看 URL https://www.youtube.com/embed/XXX。在这里XXX你需要把这个 PHP 代码:

<? php echo $_GET['id']; ? >

您应该需要从示例的开头删除<?和之间的空格,最后只需要删除和之间的空格。像这样写:。因为如果您在它们之间保留空间,它将无法正常工作。当您这样做时,您可以轻松地将 Youtube.com 视频嵌入您的网站或页面。这就是您可以为 Youtube.com 创建 PHP 页面的方式php<? php?>?>

于 2020-03-01T08:42:26.863 回答