ホームページ >バックエンド開発 >PHPチュートリアル >ランダム表示の問題について質問する

ランダム表示の問題について質問する

WBOY
WBOYオリジナル
2016-06-23 13:40:28932ブラウズ

教えてください、
PHP+Mysqlを使用している場合、
データベースから要件を満たすデータを検索し、ランダムな順序で表示し、ページに表示したいです。データを繰り返さないようにしたい場合、特に異なるページに同じデータを含めることができない場合、
これを実現するにはどうすればよいですか?
(現在発生している問題は、ページネーションが異なる、一部のデータが同じであるということです)
ありがとうございます!


ディスカッション(解決策)への返信

以前にも重複しましたが、rand(); による order を使用した後のページングが原因だと思います。

重複のないランダム性を実現するには、一時ファイルを使用して使用された ID を記録し、次の選択でそれらを除外します。

まず、すべてのランダムな結果セットを一時テーブルに格納します

次に、一時テーブルをページ分割します

同じシードにより、同じ乱数シーケンス
が ……rand() によって生成されます
から ....order まで。 by rand( n)
そしてあなたが適切だと思う方法でシードを保存してください n

皆さんありがとうございます、ポイントが付与されました

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