PHP积分兑换接口demo

积分兑换接口demo

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();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值