ホームページ > バックエンド開発 > PHPの問題 > phpで毎日ポイントを1ポイント追加する方法

phpで毎日ポイントを1ポイント追加する方法

藏色散人
リリース: 2023-03-14 13:36:02
オリジナル
1528 人が閲覧しました

毎日のポイント プラス 1 を達成する

php メソッド: 1. データ テーブルにフィールド logintime を追加します; 2. 1 日の 0 時間 0 分 0 秒を使用して、最終ログイン時刻と比較します。 3.パス「if($lastLogintime < $today) {...}」を使用してポイントを増やすことができます。

phpで毎日ポイントを1ポイント追加する方法

この記事の動作環境: Windows 7 システム、PHP バージョン 7.4、Dell G3 コンピューター。

PHP で毎日ポイントプラス 1 を達成するにはどうすればよいですか?

php は 1 日に複数のログインを実現し、ポイントを獲得するのは 1 回だけです:

インターネット上で多くのケースを見つけましたが、どれも似たような感じです。まだかなり面倒なので、自分で試してみました。この関数の実装方法

この関数を実装するには、最終ログイン時刻を示すフィールド logintime をデータ テーブルに追加しました。その日の 0 時 0 分 0 秒と最終ログイン時刻を比較します。最終ログイン時刻がこの時点より大きい場合は、すでにログインしていることを意味します。最終ログイン時刻がこれより小さい場合は、この時点では、最初にログインしたことを意味します。一度ログインするとポイントが増加します。

アップロード コード:

// 判断是否是一天中第一次登录
// 上一次登陆的时间
$lastLogintime = $userinfo[&#39;logintime&#39;];
// 一天中的零时零分零秒
$today = strtotime(date(&#39;Y-m-d&#39;));
if($lastLogintime < $today) {
    // 一天中第一次登录增加积分(关联更新)
    // 注意:使用关联更新数据的时候需要传递两次id
    $data[&#39;id&#39;] = $userinfo[&#39;id&#39;];
    $data[&#39;userinfo&#39;] = array(
        &#39;points&#39; => $userinfo[&#39;points&#39;] + C(&#39;LOGIN&#39;),
    );
    $user->relation(true)->where(array(&#39;id&#39;=>$userinfo[&#39;id&#39;]))->save($data);
}
ログイン後にコピー

注意してください。ログイン時間も変更する必要があります:

// 更新登录时间和登录ip
$updateData = array(
    &#39;id&#39; => $userinfo[&#39;id&#39;],
    &#39;userinfo&#39; => array(
        &#39;logintime&#39; => time(),
        &#39;loginip&#39; => getIP(),
    ),
);
$user->relation(true)->where(array(&#39;id&#39;=>$userinfo[&#39;id&#39;]))->save($updateData);
ログイン後にコピー

推奨学習:「PHP ビデオ チュートリアル

以上がphpで毎日ポイントを1ポイント追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート