【问题标题】:Javascript listener for video play - send to database用于视频播放的 Javascript 侦听器 - 发送到数据库
【发布时间】:2012-04-16 00:58:08
【问题描述】:

我正在与一个网站合作,我将在该网站上嵌入多个 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】:

    我之前没有使用过 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 数组中获取数据,获取您需要的值并弹出它们在您的数据库中。

    【讨论】:

    猜你喜欢
    • 2014-08-09
    • 1970-01-01
    • 2020-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多