php开发文档 会员收费1期

介绍

  最新项目——会员收费,目的是要以更好的展现形式表现给用户,以及添加了新功能(会员机制)。

索引

流程图
  1> 展示界面
  2> 获取折扣价格
接口说明

http请求脚本(curl或socket)
测试数据

流程图

其中里面的demo:是通过url进行展现,里面的mst是参数,通过不同的参数进行展现。如:http://www.demo.com/?mst=1表示参数为1的demo样式。

展示界面(4种情况)

获取折扣价格

接口说明

1、开通高级会员
psid=2
pstype=101
2、开通会员
psid=1
pstype=101
3、[会员/高级会员]价格信息
wiki地址:http://wiki.1verge.net/projects:premium:v2:product_rules_api#根据会员等级id获取等级信息
4、[是否是会员]
wiki地址:http://wiki.1verge.net/projects:premium:v2:verify_center_api#获取当前会员等级
5、[折扣信息]
wiki地址:http://wiki.1verge.net/projects:premium:v2:operation_api#根据用户id_服务id_服务类型_服务周期数_获得当前用户可以享受的折扣策略
6、可包月节目+有权观看+高级会员则显示“您是高级会员,可免费观看此节目”
7、仅包月节目+有权观看+高级会员提示“续费”
8、除6以外+有权观看则显示“截止日期”

可以在Premium.class.php中list_shows_by_pkgid函数下面继续封装调用函数

http请求脚本(curl或socket)


代码如下:

<?php
function httpRequest($url, $hostName, array $params){
$postParams = array();
foreach ($params as $key=>$val) {
$post_params[] = $key.'='.rawurlencode($val);
}

$postString = implode('&', $post_params);
$result = '';
if (function_exists('curl_init')) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Host: ' . $hostName));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'DEMO.COM PREMIUM PHP5 Client ver: ' . phpversion());
curl_setopt($ch, CURLOPT_TIMEOUT, 2);
$result = curl_exec($ch);
curl_close($ch);
} else {
$context = array('http' => array('method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded' . "\r\n".
'Host: '.$hostName . "\r\n".
'User-Agent: TEST.COM BC Test PHP5 Client ver: ' . phpversion() . "\r\n".
'Content-length: ' . strlen($postString),
'content' => $postString));
$contextId = stream_context_create($context);
$handle = fopen($url, 'r', false, $contextId);
if ($handle) {
while (!feof($handle)) $result .= fgets($sock, 4096);
fclose($handle);
}
}

return $result;
}

测试数据

1、点播信息节目ID:1e390718b72311df97c0.html
2、vip用户ID:123350942
3、普通用户ID:106738702

有权观看的节目ID:cbfb035e962411de83b1.html

(0)

相关推荐

  • PHP+MYSQL会员系统的登陆即权限判断实现代码

    复制代码 代码如下: <?php error_reporting(0); session_start(); //数据库连接 $conn = mysql_connect('localhost', 'root', ''); mysql_select_db('chenkun', $conn); mysql_query('SET NAMES UTF-8'); //定义常量 define('ALL_PS', 'PHP'); function user_shell($uid, $shell, $m_id)

  • php $_SESSION会员登录实例分享

    php会员登录模块是网站开发中很简单的一个模块,本实例主要给php初学者一个简单的参考,其中的逻辑还是要读者自己领会,多编多思考. login.php文件 <?php ob_start(); session_start(); ?> <? // error_reporting(E_ALL); // ini_set("display_errors", 1); ?> <html lang="en"> <head> <t

  • php使用$_POST或$_SESSION[]向js函数传参

    在php编程中向js函数传参可以使用$_POST也可使用$_SESSION[' '],也可用echo语句进行输出 复制代码 代码如下: <?php echo "<script>test('$_POST[userid]');</script> "; ?> 在上面的$_POST['']也可适用$_SESSION[' ']; 复制代码 代码如下: <?php $para = "hello boby!"; echo $para; /

  • PHP+MYSQL会员系统的开发实例教程

    本文通过一个简单的实例完成了完整的PHP+MySQL会员系统功能.是非常实用的一个应用.具体实现步骤如下: 一.会员系统的原理:     登陆-->判断-->保持状态(Cookie或Session)-->验证状态及其权限 二.会员系统的安全: 1.学会使用常量提高md5安全性 2.Cookie/ Session 少用明文信息 3.Session安全性要大于Cookie 4.使用Cookie/ Session读取信息 尽量增加判断信息 5.Cookie/ Session内容要精简 6.对于

  • php将会员数据导入到ucenter的代码

    我们要用的会员表结构 复制代码 代码如下: create table if not exists `net_111cnnet` ( `id` int(11) not null auto_increment, `username` varchar(32) default null, `add_time` int(11) default null, `email` varchar(50) default null, `password` varchar(50) default null, `last

  • 实用PHP会员权限控制实现原理分析

    我的通用权限系统设计是更换权限时候尽量不要涉及到代码修改,来自chinaunix论坛,今天转过来看看.希望对大家有所帮助,对PHP100的朋友有个很高的提升. 复制代码 代码如下: /* *控制访问表 * acl值 功能 * 1 需要登录 * 2 自身修改 * 4 需要组的权限集合 * 8 需要身份访问集合 * 16 身份被禁止访问 * 32 可访问的日期 * 64 可访问的周日 * 128 可访问的时间 * 256 输入密码才能访问 * 512 超级管理使用 */ class aclACL e

  • PHP实现生成唯一会员卡号

    在不查询数据库的情况下,每个会员登录进来会生成一个数字字母组合不重复的会员卡号. 效果图如下: 当我们要将一个庞大的数据进行编号时,而编号有位数限制,比如5位的车牌号.10位的某证件号码.订单流水号.短网址等等,我们可以使用36进制计算出符合位数的不重复的编号. 查看演示 下载源码 我们将0-Z(0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ)分别代表数值0-35,如字母Z代表35.这样的话我要得到一个5位的编号,最大信息量就是36的5次方了,36^5 = 604661

  • php开发文档 会员收费1期

    介绍 最新项目--会员收费,目的是要以更好的展现形式表现给用户,以及添加了新功能(会员机制). 索引 流程图 1> 展示界面 2> 获取折扣价格 接口说明 http请求脚本(curl或socket) 测试数据 流程图 其中里面的demo:是通过url进行展现,里面的mst是参数,通过不同的参数进行展现.如:http://www.demo.com/?mst=1表示参数为1的demo样式. 展示界面(4种情况)获取折扣价格接口说明 1.开通高级会员 psid=2 pstype=101 2.开通会员

  • 详解Javascript百度地图接口开发文档中的类和方法

    JavaScript API v2.0介绍 百度地图JavaScript API是一套由JavaScript语言编写的应用程序接口,它能够帮助您在网站中构建功能丰富.交互性强的地图应用,包含了构建地图基本功能的各种接口,提供了诸如本地搜索.路线规划等数据服务. 该套API免费对外开放.自v1.5版本起,您需先申请密钥(ak)才可使用,接口(除发送短信功能外)无使用次数限制. JavaScript API首家支持Https,如需要申请Https服务,请您认证企业信息,成为企业认证用户后,https

  • Java程序中Doc文档注释示例教程

    目录 Doc注释规范 @符号的用处 如何生成Doc文档 第一个:Dos命令生成 第二个:IDE工具生成 许多人写代码时总不喜欢写注释,每个程序员如此,嘿嘿,我也一样 不过,话说回来,该写还是要写哦!没人会喜欢一个不写注释的程序员,当然,也没有一个喜欢写注释的程序员,今天,我们就来说说Java注释之一--Doc注释 我们知道,Java支持 3 种注释,分别是单行注释.多行注释和文档注释,我们来看看他们的样子 //单行注释   /* 多行注释 */   /** *@... *.... *文档注释 *

  • visio二次开发--判断文档是否已发生变化(变化就加星号*)

    1.最近做一个故障树诊断的项目,用visio二次开发,可以同时打开多个绘制的故障树图形文档.项目中需要实现判断文档是否发生变化,这是很多编辑软件的基本功能,变化了就加个星号*.如果整个项目从0开始自己设计就是另外一回事了,这里是基于visio二次开发,首先想到的是去看微软的官方文档,看是否有相关的API,或则是否改变会触发某些事件,遗憾的是我没找到. 2.不过visio毕竟是微软的产品,做的就是好.它对程序运行动态中的很多过程进行了定义和监视,有一个对Scope的监视,比如粘贴,复制,删除,移动

  • 使用vue自定义指令开发表单验证插件validate.js

    这段时间在进行一个新项目的前期搭建,新项目框架采用vue-cli3和typescirpt搭建.因为项目比较轻量,所以基本没有使用额外的ui组件,有时候我们需要的一些基础组件我就直接自己开发了.今天就来介绍一下如何利用vue的自定义指令directive来开发一个表单验证插件的过程. 1.vue插件开发 关于vue的插件开发,官方文档里有很清晰的说明,详情可以去阅读开发文档.我自己开发的表单验证插件validate.ts和loading,messageBox插件都是利用了这种方式.今天先来看表单验

  • win2008 服务器安全设置部署文档(推荐)

    年前一直在赶项目,到最后几日才拿到新服务器新添加的硬盘,重做阵列配置生产环境,还要编写部署文档做好安全策略,交给测试部门与相关部门做上线前最后测试,然后将部署文档交给相关部门同事,让他根据部署文档再做一次系统,以保证以后其他同事能自己正常部署服务器,最后终于赶在放假前最后一天匆忙搞定测试后,简单的指导同事按部署文档将服务器重新部署了一次就先跑路回家了,剩下的就留给加班的同事负责将服务器托管到机房了.年后回来上班后按工作计划开始做文档(主要对之前编写的部署文档进行修正和将相关未添加的安全策略添加进

  • Spring boot集成swagger2生成接口文档的全过程

    一.Swagger介绍 Swagger是一个规范和完整的框架,用于生成.描述.调用和可视化RESTful风格的web服务.目标是使客户端和文件系统作为服务器以同样的速度来更新文件的方法,参数和模型紧密集成到服务器.这个解释简单点来讲就是说,swagger是一款可以根据restful风格生成的接口开发文档,并且支持做测试的一款中间软件. 二.使用swagger优势 1.对于后端开发人员来说 不用再手写Wiki接口拼大量参数,避免手写错误 对代码侵入性低,采用全注解的方式,开发简单 方法参数名修改.

  • HTML5开发Kinect体感游戏的实例应用

    HTML5开发Kinect体感游戏的实例应用 一.简介 我们要做的是怎样一款游戏? 在前不久成都TGC2016展会上,我们开发了一款<火影忍者手游>的体感游戏,主要模拟手游章节<九尾袭来 >,用户化身四代,与九尾进行对决,吸引了大量玩家参与. 表面上看,这款游戏与其它体感体验无异,实际上,它一直运行于浏览器Chrome下,也就是说,我们只需要掌握前端相应技术,就可以开发基于Kinect的网页体感游戏. 二.实现原理 实现思路是什么? 使用H5开发基于Kinect的体感游戏,其实工作

  • 大型门户网站实现的十四大技术小结

    一.全文搜索 Lecene框架 <基于LUCENE的搜索引擎研究与实现> 二.缓存 实现页面级的URL缓存 <基于网络爬虫的有效URL缓存> 三.生成静态文件 比如说,一个首页可能会员由多个部分组成,每个模块生成一个静态文件,然后才用服务器端包含SSI技术进行组装,其默认的后缀是.shtml 四.静态文件分布存储于独立的服务器 CSS,JS,图片,文件等,用一个Apache服务器来处理请求 五.分布式开发 各服务器间的数据同步,像新浪一样发区域的服务器数据的同步:便于使用服务器的集

  • 支付宝开发平台之第三方授权登录与获取用户信息

    对于第三方登录,我们常见了,很多应用可以进行第三方登录,我常用的有:QQ.微信.新浪.支付宝等等,今天我们就一起来简单学习一下支付宝第三方授权登录. 打开支付宝开发平台,注册成为开发者,点击开发者中心,在我的应用中创建一个应用: 点击功能信息,添加我们需要的功能: 到这我们还不能进行接口调试,因为我们的应用没有上线,APPID是无效的,这里阿里给了我们一个解决方案,就是通过沙箱模式进行接口调试,下面我们来配一下我们的沙箱模式: 配置过RAS2就可以不用配置RAS1了,公钥和私钥的生成规则,查看支

随机推荐