我正在与一个网站合作,那里将有几个嵌入式youtube视频。我想做两件事。


将javascript侦听器附加到视频,以判断是否播放了视频
使用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);


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

预先感谢您的帮助!

最佳答案

我以前没有使用过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数组中获取数据,获取所需的值并将其弹出到数据库中。

关于php - 用于视频播放的Javascript监听器-发送到数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10167569/

10-09 17:51
查看更多