verdiginiz örnek uygun yalnız şöyle bir mantık hatası var. limit kullanırken limit baslangic,gosterilecekadet
şeklinde kullanırsınız
verdiginiz kodu aralık seçecek şekilde kullanmak istiyorsanız şu şekilde düzenlenirse daha sağlıklı olur.
$rastag = mysql_query("select count(*) from tags");
while($row = mysql_fetch_array($rastag) ){
$max = $row[0];
}
// önceki örnek mysql_num_rows ile aldigi için 100 000 kayıtta mıçar
// kaçtane rastgele göstermek istediginiz değişkeni
$randnum = 10;
$rand = rand(0,$max);
$rastag2 = mysql_query("select * from tags limit $rand, $randnum");sizin verdiginiz örnekte rastgele bir değerden başlayıp ondan sonraki tüm kayıtları çekmiş oluyor
bu şekilde kod daha verimli ve uygun olur. Bu kod aslında her türlü kayıtlardan sıralı aralık seçmiş olur ama 100 000 kayıt için verinin aralık şeklinde olması bir sorun degil. aralık degilde her seferinde farklı çekmesii çin şu şekilde olmalıydı
$rastag = mysql_query("select count(*) from tags");
while($row = mysql_fetch_array($rastag) ){
$max = $row[0];
}
$randnum = 10;
for($i=1;$i<=$randnum;$i++){
$rand[] = rand(0,$max);
}
$rastag2 = mysql_query("select * from tags where id in (".implode(","$rand).")");çok fantazik oldu ama oldu yani