ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

PHP的-限制每个会话的HTML5视频显示?

2019-12-01 10:31:54  阅读:176  来源: 互联网

标签:video html5-video jwplayer wordpress php


我想限制每个会话的视频和照片显示.例如,访客观看了3个视频,当他尝试观看第四个视频时,他被重定向到订阅页面.我将使用JWPlayer或本机HTML5,这无关紧要,并且可以在WP中使用,但希望以任何方式使用PHP来实现(无论如何我都不是专家).

因此,理想情况下,这将是工作流程:
    1)访客观看视频1->可选消息->您还有2个视频
    2)访客观看视频2->可选消息->您还有1个视频
    3)访客观看视频3->可选消息->您还有0个视频
    4)访客尝试观看视频4->重新导向

到目前为止,我找到了限制每个带宽或每个时间的方式(只能限制1个视频,然后重定向),但是无论时间或大小,我都需要投放3个视频,因此这些解决方案将不起作用.关于如何实现这一点的任何想法?

编辑:这是一些要重定向的代码,我真的还没有添加任何东西,因为我什么都不需要,但是看一下:

<script src="text/javascript">
function vidplay(){
    var video = document.getElementById('video');
    video.play();
    video.addEventListener('ended',function(){
        window.location = 'http://SUBSCRIBE_PAGE';
    });
}
</script>
<video controls id="video" width="640" height="360" onclick="vidplay()">
    <source src="video/video.mp4" type="video/mp4" />
</video>

解决方法:

将一个计数存储在会话中(理想情况下是视频ID的列表,这样他们就可以在一个会话中多次观看同一视频),而用户清除Cookie可以使计数无效.否则,如果您的用户拥有必须登录的帐户,请存储他们在数据库表中观看的内容的历史记录.

编辑:现在我注意到您在这里使用wordpress,因此我无法将其添加到其中,但这是基于会话的方法的示例

<?php

// Obviously use your variable here
$ID_OF_VIDEO_HERE = $_REQUEST['video'];

if(isset($_SESSION) === false)
  session_start(); // Start PHP session management
if(isset($_SESSION['videos_viewed']) === false)
  $_SESSION['videos_viewed'] = array();

if(isset($_SESSION['videos_viewed'][$ID_OF_VIDEO_HERE]) === FALSE AND count($_SESSION['videos_viewed']) >= 3)
{
  // Redirect the User
  header('location: http://SUBSCRIBE_PAGE');
  exit();
}
else
{
  // Add current video ID to list
  $_SESSION['videos_viewed'][$ID_OF_VIDEO_HERE] = true;
}

// JUST FOR TESTING
var_dump($_SESSION['videos_viewed']);

?>

标签:video,html5-video,jwplayer,wordpress,php
来源: https://codeday.me/bug/20191201/2080187.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有