用于视频播放的 JavaScript 监听器 - 发送到数据库

问题描述 投票:0回答:1

我正在使用一个网站,其中有几个嵌入的 YouTube 视频。我想做两件事。

  1. 将 JavaScript 侦听器附加到视频,以便能够判断视频是否已播放
  2. 使用PHP将相应的数据发送到数据库

我知道 PHP 将发送数据服务器端,但我已经从 JavaScript 加载了页面,并且查看者可能不会重新发送页面来将该数据获取到数据库中。我唯一的另一个想法是 AJAX,但我对此没有任何经验。

我想我应该做这样的事情,但我对 JavaScript 太陌生,不知道如何实现它。

var video = document.getElementById('player1');

video.addEventListener("timeupdate", function() {
   if (this.currentTime >= 0) {
        //take in data from the video that it has been played
    }
}, false);

然后我仍然需要将数据发送到我的数据库。

php javascript mysql video listener
1个回答
3
投票

我之前没有使用过 Youtube API,但我相信 YouTube Javascript Player API 正是您所需要的。

  • player.getPlayerState()
    会告诉你播放器是否正在播放、暂停等

  • player.getCurrentTime()
    会告诉您自玩家开始玩以来的秒数。

注意:要使用JS api,您需要确保已启用它 播放器中的播放器嵌入网址: http://www.youtube.com/v/VIDEO_ID?version=3&enablejsapi=1

收集所需数据后,使用 AJAX 将其发送到您的服务器。这部分将取决于您正在使用的 javascript 库,或者您是否只是自己编写 javascript。我喜欢使用 YUI (由 Yahoo! 制作)。我将使用 IO 制作一个请求,并将数据作为编码的 JSON 或 POST 发送。

然后在服务器端,将收到请求,然后您可以使用

json_decode()
将 JSON 数据解码为数组,或者从
$_POST
数组中获取数据,获取所需的值并将它们弹出到您的数据库。

© www.soinside.com 2019 - 2024. All rights reserved.