本文实例讲述了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程序设计有所帮助。