多くの Web サイトにはポイントの機能があり、ポイントが一定量貯まると、そのポイントを使用して何かを引き換えることができます。この記事では主に 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 ポイント引き換えインターフェイス example_php スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。