приоритет показа банера

Vadimka

Новичок
приоритет показа банера

делаю банерку, столкнулся с приоритетами, как их использовать в запросе??
SELECT bb.id, bb.prioritet
FROM bn_banners bb
WHERE ...
ORDER BY RAND() LIMIT 1
может ктото делал уже?
если имеется 3 банера с приоритетами: 20,50 и 100
то 1 показывается - 20 раз, 2 - 50 раз, а 3 - 100 раз
только как это реализовать?
 

jrip

Новичок
Добавить поле приоретета. знаячения 2,5,10
в скрипте с помощью rand вычислять какой выпадает, а потом
т.е. $r=$rand(1,17);
if($r<=2){$r=2;}
if(($r>2)and($r<=5)){$r=5;}
if($r>5){$r=10;}
Where поле приоритета=$r;
 

Vadimka

Новичок
а как програмно условия написать? :(

$res=MYSQL_QUERY("SELECT id,prior FROM bb WHERE ...");
while($row=mysql_fetch_row($res)){

$total_priority += $row[1];
$rand=rand(1,$total_priority);
 

Кром

Новичок
>а как програмно условия написать?

Там описаны некоторые варианты программного решениия. Смысл в том, что тебе нужно сначала сгенерировать на php случайное число/id, а потом по нему выбрать из базы соответствующий банер.
 
Сверху