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 相关文章推荐
dedecms模版制作使用方法
Apr 03 PHP
php 各种应用乱码问题的解决方法
May 09 PHP
PHP Session_Regenerate_ID函数双释放内存破坏漏洞
Jan 27 PHP
PHP关联数组的10个操作技巧
Jan 21 PHP
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
Oct 26 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
Jul 12 PHP
利用PHP如何写APP接口详解
Aug 23 PHP
基于PHP实现用户注册登录功能
Oct 14 PHP
Laravel 5.4向IoC容器中添加自定义类的方法示例
Aug 15 PHP
php设计模式之单例模式用法经典示例分析
Sep 20 PHP
laravel 使用事件系统统计浏览量的实现
Oct 16 PHP
PHP大文件分割分片上传实现代码
Dec 09 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
mysql数据库差异比较的PHP代码
2012/02/05 PHP
PHP设计模式之迭代器模式
2016/06/17 PHP
浅析Laravel5中队列的配置及使用
2016/08/04 PHP
PHP微信发送推送消息乱码的解决方法
2019/02/28 PHP
Thinkphp5框架实现获取数据库数据到视图的方法
2019/08/14 PHP
漂亮的仿flash菜单,来自蓝色经典
2006/06/26 Javascript
IE 条件注释详解总结(附实例代码)
2009/08/29 Javascript
js post方式传递提交的实现代码
2010/05/31 Javascript
js 利用image对象实现图片的预加载提高访问速度
2013/03/29 Javascript
javascript数组详解
2014/10/22 Javascript
JavaScript学习小结(7)之JS RegExp
2015/11/29 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
2016/10/28 Javascript
canvas实现探照灯效果
2017/02/07 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
2017/03/02 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
2018/02/10 Javascript
js实现控制文件拖拽并获取拖拽内容功能
2018/02/17 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
js的对象与函数详解
2019/01/21 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
Python中你应该知道的一些内置函数
2017/03/31 Python
python生成多个只含0,1元素的随机数组或列表的实例
2018/11/12 Python
Python3非对称加密算法RSA实例详解
2018/12/06 Python
如何使用pyinstaller打包32位的exe程序
2019/05/26 Python
pyqt5 获取显示器的分辨率的方法
2019/06/18 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
python统计文章中单词出现次数实例
2020/02/27 Python
Django模板标签中url使用详解(url跳转到指定页面)
2020/03/19 Python
小学毕业寄语大全
2014/04/03 职场文书
环卫工作汇报材料
2014/10/28 职场文书
2014小学语文教学工作总结
2014/12/17 职场文书
2014小学数学教师个人工作总结
2014/12/18 职场文书
幼儿园食品安全责任书
2015/05/08 职场文书
nginx如何将http访问的网站改成https访问
2021/03/31 Servers
Django一小时写出账号密码管理系统
2021/04/29 Python
Linux安装apache服务器的配置过程
2021/11/27 Servers