PHP积分兑换接口实例


Posted in PHP onFebruary 09, 2015

本文实例讲述了PHP积分兑换接口的实现方法。分享给大家供大家参考。具体实现方法如下:

exchange.php接口内容如下:

<?php  

  

/*session_start(); 

if(!isset($_SESSION['zaszh_user_id'])){ 

    echo json_encode(array('status'=>'error','msg'=>'连接超时,请重新打开页面。')); 

    exit; 

} 

$user_id = $_SESSION['zaszh_user_id'];*/  

  

$user_id = 1; // 测试用  

$exchange_points = intval($_GET['exchange_points']);  

  

require('connect_database.php');  

// 扣除答题积分  

$mysqli->query("update zaszh_user set answer_points=answer_points-{$exchange_points} where id='{$user_id}' and answer_points>={$exchange_points}");  

if($mysqli->affected_rows){  

    // 有积分  

    switch($exchange_points){  

        // 5元话费  

        case 200:  

            $mysqli->query("update zaszh_telephone_charge_surplus set charge_surplus=charge_surplus-5 where date=substring(now(),1,10) and charge_surplus>=5");  

            if($mysqli->affected_rows){  

                // 有剩余  

                $mysqli->query("insert into zaszh_award(user_id,prize,create_date) values('{$user_id}','5元话费',unix_timestamp(now()))");  

                if($mysqli->affected_rows){  

                    echo json_encode(array('status'=>'success','msg'=>'5元话费'));  

                }else{  

                    // 获奖失败  

                }  

            }else{  

                // 无剩余  

                // 恢复答题积分  

                $mysqli->query("update zaszh_user set answer_points=answer_points+{$exchange_points} where id='{$user_id}'");  

            }  

            break;  

        // 10元话费  

        case 400:  

            $mysqli->query("update zaszh_telephone_charge_surplus set charge_surplus=charge_surplus-10 where date=substring(now(),1,10) and charge_surplus>=10");  

            if($mysqli->affected_rows){  

                // 有剩余  

                $mysqli->query("insert into zaszh_award(user_id,prize,create_date) values('{$user_id}','10元话费',unix_timestamp(now()))");  

                if($mysqli->affected_rows){  

                    echo json_encode(array('status'=>'success','msg'=>'10元话费'));  

                }else{  

                    // 获奖失败  

                }  

            }else{  

                // 无剩余  

                // 恢复答题积分  

                $mysqli->query("update zaszh_user set answer_points=answer_points+{$exchange_points} where id='{$user_id}'");  

            }  

            break;  

    }  

  

    // 记录积分消耗  

    $mysqli->query("insert into zaszh_answer_points_consume(user_id,points_consume,consume_for,create_date) values('{$user_id}','{$exchange_points}','exchange',unix_timestamp(now()))");  

}else{  

    // 无积分  

    echo json_encode(array('status'=>'error','msg'=>'您的积分不足。'));  

}  

$mysqli->close();

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
在PHP中使用XML
Oct 09 PHP
WIN98下Apache1.3.14+PHP4.0.4的安装
Oct 09 PHP
PHP生成Flash动画的实现代码
Mar 12 PHP
实测在class的function中include的文件中非php的global全局环境
Jul 15 PHP
一个漂亮的php验证码类(分享)
Aug 06 PHP
php 批量替换程序的具体实现代码
Oct 04 PHP
PHP实现将科学计数法转换为原始数字字符串的方法
Dec 16 PHP
PHP利用hash冲突漏洞进行DDoS攻击的方法分析
Mar 26 PHP
PHP实现linux命令tail -f
Feb 22 PHP
PHP实现补齐关闭的HTML标签
Mar 22 PHP
PHP中header用法小结
May 23 PHP
Yii2组件之多图上传插件FileInput的详细使用教程
Jun 20 PHP
PHP答题类应用接口实例
Feb 09 #PHP
自己写的php中文截取函数mb_strlen和mb_substr
Feb 09 #PHP
php构造函数的继承方法
Feb 09 #PHP
php继承中方法重载(覆盖)的应用场合
Feb 09 #PHP
php抽象类使用要点与注意事项分析
Feb 09 #PHP
PHP中的socket_read和socket_recv区别详解
Feb 09 #PHP
支持png透明图片的php生成缩略图类分享
Feb 08 #PHP
You might like
第十节--抽象方法和抽象类
2006/11/16 PHP
ajax返回值中有回车换行、空格的解决方法分享
2013/10/24 PHP
destoon找回管理员密码的方法
2014/06/21 PHP
PHP远程采集图片详细教程
2014/07/01 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
增强用户体验友好性之jquery easyui window 窗口关闭时的提示
2012/06/22 Javascript
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
2013/10/11 Javascript
无闪烁更新网页内容JS实现
2013/12/19 Javascript
使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
2015/09/16 Javascript
JavaScript实现图片自动加载的瀑布流效果
2016/04/11 Javascript
详解JavaScript权威指南之对象
2016/09/27 Javascript
前端主流框架vue学习笔记第一篇
2017/07/26 Javascript
vue项目中axios使用详解
2018/02/07 Javascript
解决echarts中横坐标值显示不全(自动隐藏)问题
2020/07/20 Javascript
解决vue-loader加载不上的问题
2020/10/21 Javascript
Python语言描述连续子数组的最大和
2018/01/04 Python
Python网络编程基于多线程实现多用户全双工聊天功能示例
2018/04/10 Python
详谈python3 numpy-loadtxt的编码问题
2018/04/29 Python
Python编写通讯录通过数据库存储实现模糊查询功能
2019/07/18 Python
tensorflow之tf.record实现存浮点数数组
2020/02/17 Python
canvas学习笔记之绘制简单路径
2019/01/28 HTML / CSS
KIEHL’S科颜氏官方旗舰店:源自美国的顶级护肤品牌
2018/06/07 全球购物
HolidayLettings英国:预订最好的度假公寓、别墅和自助式住宿
2019/08/27 全球购物
办公室文秘自我评价
2013/09/21 职场文书
《少年王冕》教学反思
2014/04/11 职场文书
保护环境倡议书100字
2014/05/19 职场文书
新教师个人工作总结
2015/02/06 职场文书
2015年党总支工作总结
2015/05/25 职场文书
幼儿园托班开学寄语(2015秋季)
2015/05/27 职场文书
2015年公路路政个人工作总结
2015/07/24 职场文书
施工安全协议书
2016/03/22 职场文书
2019年预备党员的思想汇报:加深对党的认知
2019/09/25 职场文书
CSS完成视差滚动效果
2021/04/27 HTML / CSS
Java数据结构之堆(优先队列)
2022/05/20 Java/Android
ubuntu下常用apt命令介绍
2022/06/05 Servers
Mysql的Table doesn't exist问题及解决
2022/12/24 MySQL