卡扣点模式登录接口二次开发,登录一次就扣1点

二次开发卡扣点模式登录接口
二次开发

1.方案:到api目录创建api文件:include/applibapi/api/Default/AppEn.loginB.ic.php

(注意路径不一样的,点模式接口路径)
2.把:/include/applibapi/api/CardPoint/AppEn.login.ic.php 复制一份到AppEn.loginB.ic.php

3.AppEn.loginB.ic.php修改后代码

  1. <?php
  2. /***********************接口介绍说明******************************************
  3. * login.ic
  4. * 卡扣点模式卡登录验证
  5. * *****************************************************************************
  6. */
  7. $icid = Plug_Set_data('icid');
  8. $icpwd = Plug_Set_data('icpwd');
  9. $key = Plug_Set_data('key');
  10. $maxoror = Plug_Set_data('maxoror');
  11. $daihao = PLUG_DAIHAO();
  12. #预设好文本字符串数组
  13. $user_str_log = plug_load_langs_array("" . 'user', "" . 'user_str_log');
  14. $appen_str_log = plug_load_langs_array('applib', 'appen_str_log');
  15. if (Plug_App_data('app_MoShi') !== 'CardPoint') {
  16. Plug_Echo_Info($appen_str_log[5058], 5058);
  17. }
  18. if ($icid == '') {
  19. Plug_Echo_Info('请输入激活码', -1);
  20. }
  21. //登陆前绑定-------------------------------------------------------------------------
  22. //读取用户数据
  23. $Get_DaTa = Plug_Get_Card_Info($icid, $icpwd, $daihao);
  24. if (is_array($Get_DaTa)) {
  25. //判断是否已经解除绑定
  26. if ($Get_DaTa['L_key_info'] == '' and $key !== '') {
  27. //添加绑定
  28. $sql = "UPDATE`bs_php_pattern_login`SET `L_key_info`='{$key}' WHERE `L_id`='{$Get_DaTa['L_id']}';";
  29. $tmp = Plug_Query($sql);
  30. }
  31. }
  32. //END
  33. //-----------------------------------------
  34. $log = Plug_Car_Login_point($icid, $icpwd, $key, $daihao);
  35. if ($log == 1069) $log = Plug_Car_Login_point($icid, $icpwd, $key, $daihao);
  36. if ($log == 1081) {
  37. //建立登录限制
  38. $log = Plug_Login_Multi_Control($icid, $daihao, $maxoror, $icid, $icid);
  39. if ($log != 5047) Plug_Echo_Info($appen_str_log[$log], $log);
  40. /**
  41. * 查询用户信息
  42. */
  43. $carinfo = Plug_Get_Card_Info($icid, $icpwd, $daihao);
  44. if ($carinfo == 1083 || $carinfo == 1084) Plug_Echo_Info($user_str_log[$arr_log]);
  45. if ($carinfo['L_IsLock'] > 0) {
  46. Plug_Echo_Info('当前激活码已经被冻结禁止登录当前软件.');
  47. }
  48. if (Plug_App_data('app_set') == 1) {
  49. if ((string)$carinfo['L_key_info'] != (string)$key) {
  50. //注销登录
  51. Plug_Set_Session_Value('ic_carid', ''); //登陆UID
  52. Plug_Set_Session_Value('ic_pwd', ''); //登陆MD7加密
  53. Plug_Set_Session_Value('USER_UID', '');
  54. Plug_Echo_Info('[5035]' . $appen_str_log[5035]);
  55. Plug_Echo_Info('[5035]' . $appen_str_log[5035]);
  56. }
  57. }
  58. //---------------------------------------
  59. //链接数验证
  60. //$login_ssl = MD5($BSphpSeSsL);
  61. Plug_Links_Add_Info('-1', $icid, $key, $daihao, $maxoror);
  62. //-----------------------------------------
  63. //记录登录时间用做扣点
  64. $ic_vipdate = $carinfo['L_vip_unix'];
  65. $ic_key = $carinfo['L_key_info'];
  66. $login_info = NULL;
  67. if ($key == $ic_key & $ic_key != '') $login_info = Plug_App_data('app_logininfo');
  68. //-----------------------------------------
  69. //----------------改造代码开始-------------------------
  70. //-----------------------------------------
  71. //1.参考AppEn.jiekey.lg.php 登录一次扣除一点
  72. $balance = 1; //扣除点数
  73. if ($ic_vipdate <= 0 or $ic_vipdate < $balance) {
  74. Plug_Echo_Info('点数不足,无非扣点', -300);
  75. }
  76. #执行扣点
  77. $sql = "UPDATE`bs_php_pattern_login`SET `L_vip_unix` = `L_vip_unix` - {$balance} WHERE `L_id` ='{$carinfo['L_id']}'";
  78. $tmp = Plug_Query($sql);
  79. //添加日志记录
  80. Plug_Add_AppenLog('money_buy_log', "点数扣除{$balance}点,扣点前:{$carinfo['L_vip_unix']}点", $icid);
  81. //----------------改造代码结束-------------------------
  82. /**
  83. * 返回说明
  84. * 1.= 成功返回1
  85. * 2.= 登陆成功代号
  86. * 3.= 用户绑定key
  87. * 4.= 用户登陆成功返回特定数据
  88. * 5.= VIP到期时间
  89. */
  90. Plug_Echo_Info("01|1081|$ic_key|$login_info|$ic_vipdate|||||", 1081);
  91. } else {
  92. Plug_Echo_Info($user_str_log[$log], $log);
  93. }

4.客户端调用

把客户端接口调用&api=login.ic 改名 &api=loginB.ic 即可,其他参数继承一样!

  1. &api=loginB.ic