ホームページ  >  記事  >  バックエンド開発  >  このお気に入りの機能を開発するにはどうすればよいでしょうか?

このお気に入りの機能を開発するにはどうすればよいでしょうか?

WBOY
WBOYオリジナル
2016-12-01 01:27:32914ブラウズ

このお気に入りの機能を開発するにはどうすればよいでしょうか?
PHP を使用してこのいいね機能を開発するには、「いいね!」をクリックして誰が気に入ったかを記録し、再度クリックしたときに「いいね!」をキャンセルするにはどうすればよいでしょうか。アドバイスを求めている初心者。

返信内容:

このお気に入りの機能を開発するにはどうすればよいでしょうか?
PHP を使用してこのいいね機能を開発するには、「いいね!」をクリックして誰が気に入ったかを記録し、再度クリックしたときに「いいね!」をキャンセルするにはどうすればよいでしょうか。アドバイスを求めている初心者。

これが上記の答えとほぼ同じですが、次のことを付け加えておきます:

  1. そのようなフィールドが記事テーブルにあるはずです like_num,dislike_numこれら 2 つのフィールドは、値を取得するのに便利なように、それぞれ「いいね」と「嫌い」の数を記録します (トピック投稿の「いいね」と評価はほぼ同じです)。 );

  2. 次のステップは上記とほぼ同じで、ユーザーがこの種の操作をしたかどうかを判断するために「いいね!」とコメントが記録されます。
いいねテーブルを提案する必要があります

フィールドには、少なくとも記事ID、uid、islikeを含める必要があります

ユーザーが「いいね!」をクリックするとき、まずユーザーがこの記事に対して「いいね!」をクリックしたかどうかを確認し、クリックした場合は、ユーザーが「すでに気に入っている」場合は、関連情報がテーブルに書き込まれます。

このような作業はまずredisなどで行うことができ、いいねをクリックするとredisのキューに入れられ、最後にキューから削除されます。一定時間内に均一にデータベースに書き込まれるため、素早いレスポンスが実現できます

ユーザーはこの行動を気に入って記録し、次回クリックしたときに、その行動が好きか嫌いかを判断します。

記事テーブル補助コンテンツ

記事ユーザー関係テーブル (rel_table) ID 補助ユーザー ID like

ユーザーテーブル userid

ユーザーは記事 1 が良いと考え、「いいね!」をクリックします: 記事のユーザー関係テーブルに 1 レコードを追加します。

いいねをキャンセルし、いいねを 0 としてマークします (rel_table を更新して like=1 に設定します。ここで、aid=1 および userid=1190)。関係テーブルを通じてこれを知る ユーザーがこの記事を気に入っているかどうか (aid=1 および userid=1190 の rel_table から like を選択)

また、どの記事が好きかを知ることもできます (userid=1190 の rel_table から * like を選択)


このような関数を少し前に作成しました。アイデアは次のとおりです。

まず、ユーザーの ID といいねした記事の ID を含むユーザー行動記録テーブルを作成します。また、ユーザーのステータスも含まれます。クリックすると、ステータスが 1 に変わります。キャンセルする場合は、0 に変更します。次回気に入ったら、1 に変更します

次に、記事拡張用の追加のテーブルを作成します。これは、次のようなデータを記録するために使用されます。いいね数やコメント数などを表示し、ユーザーはその都度操作を行う 拡張テーブル内の該当データを操作するだけで、記事を開いた後、ステータスが評価できるかどうかで気に入るかどうかを判断できる見つかった、またはステータスのステータス。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。