URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 2183
[ Назад ]

Исходное сообщение
"Мускульный рандомайз"

Отправлено .zZz. , 18-Мрт-04 13:11 
Хочу блин сделать простейший баннеро-показыватель:

$query="SELECT banner_img,banner_id,banner_views,banner_desc from banner where banner_type=".$type." and banner_show=1 ORDER BY RAND() LIMIT 1";

И хоть ты тресни: показывает первую картинку и ИНОГДА вторую...
Может мусклу тоже надо говорить чтобы он датчик случайных чисел переиничивал?
Помогите, плз.


Содержание

Сообщения в этом обсуждении
"Мускульный рандомайз"
Отправлено MeLLowD , 18-Мрт-04 14:07 
>Хочу блин сделать простейший баннеро-показыватель:
>
>$query="SELECT banner_img,banner_id,banner_views,banner_desc from banner where banner_type=".$type." and banner_show=1 ORDER BY RAND() LIMIT
>1";
>
>И хоть ты тресни: показывает первую картинку и ИНОГДА вторую...
>Может мусклу тоже надо говорить чтобы он датчик случайных чисел переиничивал?
>Помогите, плз.

Если версия mysql ниже 3.23, то использовать ORDER BY RAND() нельзя.
Датчик сбрасывать ненадо. Если с версией все ок, то смотри сам запрос или таблицу, возможно у тебя только первые две записи имеют banner_show = 1 :)


"Мускульный рандомайз"
Отправлено .zZz. , 18-Мрт-04 14:25 
>>Хочу блин сделать простейший баннеро-показыватель:
>>
>>$query="SELECT banner_img,banner_id,banner_views,banner_desc from banner where banner_type=".$type." and banner_show=1 ORDER BY RAND() LIMIT
>>1";
>>
>>И хоть ты тресни: показывает первую картинку и ИНОГДА вторую...
>>Может мусклу тоже надо говорить чтобы он датчик случайных чисел переиничивал?
>>Помогите, плз.
>
>Если версия mysql ниже 3.23, то использовать ORDER BY RAND() нельзя.
>Датчик сбрасывать ненадо. Если с версией все ок, то смотри сам запрос
>или таблицу, возможно у тебя только первые две записи имеют banner_show
>= 1 :)

Server version          3.23.52
все параметры первого и остальных баннеров идентичны, за исключением поля контента и кол-ва показов. Кстати, по показам тут так:

315 (первая картинка)
0 (2я картинка)
0 (3я картинка)
0 (4я картинка)
2 (5я картинка)

блин, почему 2! Еслиб 0 - ещё куда не шло...



"Мускульный рандомайз"
Отправлено MeLLowD , 18-Мрт-04 14:35 
>>>Хочу блин сделать простейший баннеро-показыватель:
>>>
>>>$query="SELECT banner_img,banner_id,banner_views,banner_desc from banner where banner_type=".$type." and banner_show=1 ORDER BY RAND() LIMIT
>>>1";
>>>
>>>И хоть ты тресни: показывает первую картинку и ИНОГДА вторую...
>>>Может мусклу тоже надо говорить чтобы он датчик случайных чисел переиничивал?
>>>Помогите, плз.
>>
>>Если версия mysql ниже 3.23, то использовать ORDER BY RAND() нельзя.
>>Датчик сбрасывать ненадо. Если с версией все ок, то смотри сам запрос
>>или таблицу, возможно у тебя только первые две записи имеют banner_show
>>= 1 :)
>
>Server version          3.23.52
>
>все параметры первого и остальных баннеров идентичны, за исключением поля контента и
>кол-ва показов. Кстати, по показам тут так:
>
>315 (первая картинка)
>0 (2я картинка)
>0 (3я картинка)
>0 (4я картинка)
>2 (5я картинка)
>
>блин, почему 2! Еслиб 0 - ещё куда не шло...

какого типа поле banner_type?


"Мускульный рандомайз"
Отправлено .zZz. , 18-Мрт-04 18:30 

>>315 (первая картинка)
>>0 (2я картинка)
>>0 (3я картинка)
>>0 (4я картинка)
>>2 (5я картинка)
>>
>>блин, почему 2! Еслиб 0 - ещё куда не шло...
>
>какого типа поле banner_type?
tinyint(1)


"Мускульный рандомайз"
Отправлено MeLLowD , 18-Мрт-04 18:45 
>
>>>315 (первая картинка)
>>>0 (2я картинка)
>>>0 (3я картинка)
>>>0 (4я картинка)
>>>2 (5я картинка)
>>>
>>>блин, почему 2! Еслиб 0 - ещё куда не шло...
>>
>>какого типа поле banner_type?
>tinyint(1)

все-таки что то нетак с запросом или данными, у меня RAND() отрабатывает на ура


"Мускульный рандомайз"
Отправлено SurfMan , 23-Мрт-04 11:53 


может стоит мускул свежий поставить?


"Мускульный рандомайз"
Отправлено .zZz. , 23-Мрт-04 16:36 
>может стоит мускул свежий поставить?
может и стоит, но всё же :)) (честно гря, перейти на 4ку траблематично в моём случае)
Попробую сделать рандомайз по-другому лучше.