日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TP5 实现链接分享/帮助,限制每个用户每天一次帮忙

發布時間:2025/7/14 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TP5 实现链接分享/帮助,限制每个用户每天一次帮忙 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、實現思想

1.1、分享人角度
  • 用戶需要將對應生成的鏈接發送給其他用戶
  • 鏈接中必須包含所需要的 當前用戶ID相關ID(例如:視頻ID/商品ID)
  • 用戶需要登錄才能分享,如果沒有登錄則不傳 用戶ID相關ID
  • 分享成功后需要獲得對應的報酬或分享成功的展示
1.2、幫助人角度
  • 用戶需要點擊分享人的鏈接并且需要登錄,否則不算分享成功。
  • 幫助人點擊一次算一次,多次點擊也只算一次

前端在分享前需要調用接口,告訴后端 某某用戶 分享的 相關ID(例如:視頻ID/商品ID)
前端在用戶點擊的鏈接需要去判斷是否帶有分享參數,如果有則需要調取 幫助分享的接口
后端需要將 幫助分享的接口 改成需要登錄狀態的,這樣才可以讓用戶去登錄后調取該接口。

2、實現代碼

2.1、分享前調用接口
/*** @ApiTitle (分享前調用接口)* @ApiMethod (GET)* @ApiHeaders (name=Authorization, type=string, required=true, description="用戶Token")* @ApiParams (name="id", type="integer", description="呆滯料id")* @ApiReturn ()*/ public function shareBusiness() {$id = input('id', 0);if (!$id) $this->error('參數錯誤!');//存入redis$redis = RedisService::connect();//先刪除后更新$key = RedisService::SU_MATERIAL_BUSINESS_SHARE . $this->auth->uid;$redis->zrem($key, $id);$redis->zadd($key, [$id => time()]);$this->success('成功!'); }

1、其中 RedisService 是我自己建立的服務類,主要存redis健和相關操作
2、$this->auth->uid 這個是當前用戶的ID,我這里用的是有序集合,其實是有無序集合也是可以的,只是考慮到之后可能要看用戶分享的記錄,這里的score存的是時間。
3、其中值里面的value存的是 相關ID(例如:視頻ID/商品ID),以便對應操作

2.2、分享后調用接口
/*** @ApiTitle (點擊分享鏈接)* @ApiMethod (GET)* @ApiHeaders (name=Authorization, type=string, required=true, description="用戶Token")* @ApiParams (name="id", type="integer", description="相關id")* @ApiParams (name="share_user_id", type="integer", description="分享人ID")* @ApiReturn ()*/ public function clickShareLink() {$id = input('id', 0); //相關ID$shareUserId = input('share_user_id', 0); //分享人ID$userId = $this->auth->uid; //當前用戶IDif (!$id || !$shareUserId) $this->error('參數錯誤!');$key = RedisService::SU_MATERIAL_BUSINESS_SHARE . $shareUserId;$key2 = RedisService::SU_MATERIAL_BUSINESS_SHARE_SUCCESS . $shareUserId . ':' . $id;$redis = RedisService::connect();//判斷用戶是否分享過if ($redis->zscore($key, $id)) {//判斷該用戶是否點擊過if (!$redis->zscore($key2, $userId)) {//記錄保存至當天$redis->zadd($key2, [$userId => time()]);$expire = strtotime(date('Y-m-d 23:59:59', time())) - time();$redis->expire($key2, $expire);//執行相關的獎勵操作// ....$this->success('分享成功!');}}$this->success('分享失敗!'); }

1、RedisService::SU_MATERIAL_BUSINESS_SHARE 這個鍵值主要存分享人ID和相關ID,用于判斷該分享鏈接是否有用
2、RedisService::SU_MATERIAL_BUSINESS_SHARE_SUCCESS 這個健主要存分享人ID、幫助人ID和相關ID,用于限制幫助人只能幫助一次。
3、 這里需要設置幫助成功鍵的有效期,主要是用于讓幫助人第二天還能幫助一次,如果限制永久只能幫助一次的話,這段$expire = strtotime(date('Y-m-d 23:59:59', time())) - time(); 和 $redis->expire($key2, $expire); 都注釋掉。

  • 這樣就達到了分享相關,另外還有一種是根據二維碼和邀請碼的幫助,等下一次我再發布一篇,歡迎有什么問題都可以發布評論。

總結

以上是生活随笔為你收集整理的TP5 实现链接分享/帮助,限制每个用户每天一次帮忙的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产视频一区在线播放 | melody在线高清免费观看 | 久久久久亚洲av成人人电影 | 久久综合伊人 | 午夜一区二区三区免费观看 | 黑人巨大猛交丰满少妇 | 国产56页| 日韩欧美一二三 | 亚洲天堂手机 | h片大全 | 国产精品久久久久久久免费 | 国产巨乳在线观看 | 亚洲人高潮女人毛茸茸 | 精品97人妻无码中文永久在线 | 依人成人 | 欧美伦理一区二区三区 | 受虐m奴xxx在线观看 | 老司机午夜性大片 | 欧美日韩激情在线一区二区三区 | 久久最新 | 99久久久无码国产精品性 | 日韩1区2区3区 | 丝袜美腿av | 天天躁夜夜躁狠狠躁 | 91视频污在线观看 | 这里只有精品国产 | 国产av一区二区三区精品 | 精品中文字幕一区 | 天天爽夜夜爽夜夜爽精品 | 99re99热| 91一区二区三区 | 国产精品久久久免费视频 | av不卡免费在线 | 蜜臀av一区二区三区激情综合 | 亚洲精华国产精华精华液网站 | 日韩大尺度在线观看 | wwwjizzzcom| 成人激情五月天 | 一区二区三区蜜桃 | 成熟人妻av无码专区 | 欧美色图19p | 国产的av| 五月婷激情 | 最近中文字幕一区二区 | 夜夜操天天操 | 破处视频在线观看 | 欧美性猛烈 | 中文字幕人妻一区二区三区在线视频 | 日本一区二区三区精品 | 国产在线不卡视频 | 在线观看成人动漫 | 一级做a爱视频 | 蜜芽在线视频 | 日日干视频 | 东北女人av| 娇妻玩4p被三个男人伺候电影 | 中文字幕中文字幕 | 夜夜嗨aⅴ一区二区三区 | 亚洲综合第一页 | 奇米狠狠操| 91亚洲精| 欧美性免费 | 在线免费视频一区二区 | 国产最新在线视频 | 伊人久久超碰 | 日本网站在线免费观看 | 水蜜桃色314在线观看 | 亚洲成人黄色在线 | 99精品视频免费看 | 国产精品s色 | 男人免费视频 | 桃色一区二区三区 | 欧美成人性生活片 | 91精品国产成人 | 亚洲精品18p| 日本熟女毛茸茸 | 久久精品人妻av一区二区三区 | 成人合集| 国产精品成久久久久三级 | 日韩午夜影院 | 天天看天天干 | 久久性生活视频 | 欧美视频一区二区三区四区在线观看 | 久久久久久国产精品免费 | 久久综合成人网 | 99国产精品人妻噜啊噜 | 一级影片在线观看 | 97色资源| 日韩一区二 | 免费看爱爱视频 | 男女被到爽流尿 | 欧美成人精品一区二区免费看片 | 亚洲成人系列 | 国产麻豆一区二区 | 亚洲欧洲自拍偷拍 | 欧美精品成人久久 | www.199麻豆| 日日操夜夜骑 | 在线观看视频99 |