PHP积分兑换接口实例
更新时间:2015年02月09日 15:41:34 作者:yhb241
这篇文章主要介绍了PHP积分兑换接口,实例分析了积分兑换接口的逻辑处理与数据库操作技巧,需要的朋友可以参考下
本文实例讲述了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();
/*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调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和m
mysql_fetch_object() 和 mssql_fetch_array类似,只有一点区别,即返回一个对象而不是数组,并将字段名字做为属性。间接地也意味着只能通过字段名来访问,而不是偏移量2012-08-08
PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
本篇文章是对PHPEXCEL的使用进行了详细的分析介绍,需要的朋友参考下2013-06-06
php中array_unshift()修改数组key注意事项分析
这篇文章主要介绍了php中array_unshift()修改数组key注意事项,实例分析了array_unshift()函数在处理键值为数字类型时自动转换键值的情况,需要的朋友可以参考下2016-05-05
PHP echo,print,printf,sprintf函数之间的区别与用法详解
这篇文章主要是对PHP中echo,print,printf,sprintf函数之间的区别与用法进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助2013-11-11


最新评论