私はこれを行うための最良の方法は何だろうと思っています:
人がレビューを送信します (名前、電子メール、Web ホスト、ホストされているドメイン、ランキング データ [5 つの数値要素] など)
PHP はそのレビューを「SubmittedReviews」テーブルに挿入します
その後、送信されたレビューをバックエンドで監視し、必要なレビューを送信します
4 . PHP は、その情報を「LiveReviews」と呼ばれる別のテーブル (「SubmittedReviews」と同じテーブル構造を持つ) に挿入します。
(または、PHP でホストごとにテーブルを作成し、そのホストのレビューを内部に作成する方がよい場合があります。これは、多くのホストが存在するため、別のテーブルを作成して、"トップ" のランキング データを事前に計算するためです。 hosts」テーブル)
したがって、PHP でレビューをライブで送信するように ([ホストごとに] 新しいテーブルを作成するか、「LiveReviews」テーブルにのみ)、ランキング データを別のテーブルに送信し、各ホストのすべてのランキング データを合計します。すぐに利用できるので、どのホストが最高にランク付けされているかがわかります。
それとも、どのホストが最高にランキングされているか知りたい場合、PHP を使用してその場で LiveReviews ランキング データを計算する必要がありますか? フロント ページがこのデータを頻繁にロードすることを考えると、毎回計算するのは適切ではないようです。事前に計算しておけばよかった。
したがって、この「ランキング データ」テーブルがある場合、ホストごとにすべてのレビューを含むテーブルが必要なようです。それ以外の場合は、大きなテーブル (LiveReviews) を 1 つだけ持つ方がよいようです。
これが理にかなっていることを願っています!
最善の方法は何ですか?私はMySQLにかなり慣れていません。