Home > Yomi-Search(PHP)modified改造 > Yomi-Search(PHP)modifiedで簡単ランダム表示

Yomi-Search(PHP)modifiedで簡単ランダム表示

あるカテゴリなど、特定の条件からランダムでレコードを抽出したい場合が多々あります。

フォーラムなどで、ランダムジャンプを改造した物がありますが、MySQLの機能を利用すれば簡単に実現できます。
SQL文の「ORDER BY」(並び替え)指定で「rand()」と指定します。
当然「WHERE句」も指定できるので、「相互リンク」、「おすすめ」、「特定のカテゴリ」などの抽出も出来ます。

おすすめ
WHERE substring(replace(mark,'_',''),1,1)='1'
相互リンク
WHERE substring(replace(mark,'_',''),2,1)='1'
任意のマーク
[マーク番号]に数値を入れる
WHERE substring(replace(mark,'_',''),[マーク番号],1)='1'
特定のカテゴリ
[path]にパスを入れる 例:01/02/
WHERE category LIKE '%&[path]%&%'

最後にリミットを指定して表示件数を特定します。

SQL:
SELECT * FROM {$db->db_pre}log WHERE substring(REPLACE(mark,'_',''),2,1)='1' ORDER BY rand() LIMIT 15

この方法では、1つのSQL文で情報が手に入りますので、1番簡単な方法だと思います。
下記は相互リンクサイトを15件表示するサンプル

PHP:
//相互ランダム15件表示
$query = "SELECT * FROM {$db->db_pre}log WHERE substring(replace(mark,'_',''),2,1)='1' ORDER BY rand() limit 15";
$log_lines = $db->rowset_assoc($query) or $db->error("Query failed $query".__FILE__.__LINE__);
if($log_lines){
    foreach($log_lines as $log_data) {
    //出力したい内容
    }
}

検索エンジンSEO-SOのトップページなどで使用しています。


関連記事

Comments:0

Comment Form
Remember personal info

Trackback+Pingback:0

TrackBack URL for this entry
http://blog.seo-so.com/archives/5/trackback
Listed below are links to weblogs that reference
Yomi-Search(PHP)modifiedで簡単ランダム表示 from SEO-SO blog

Home > Yomi-Search(PHP)modified改造 > Yomi-Search(PHP)modifiedで簡単ランダム表示

Feeds
メタ情報

Page Top