random degilde sıralı cıkması için
$result = $db->query("SELECT DISTINCT tag FROM " . PREFIX . "_search ORDER BY id DESC LIMIT 0,{$limit}");desc yazarsan en son eklenen en üste cıkar tabi tag tablonda eger id diye bir kolon yoksa ORDER BY id DESC silersin
diger sorunu anladım kadarı ile mesela 3 karakterden aşşagı harf girilirse arama yapmasın
bunun için de
$uzunluk=strlen($metin); kullanırsın
if( $uzunluk<3){
echo '3 karakterden az girme';
exix();
}