Только что задавал похожий вопрос — вроде не запрещено. Если вы гоните тематический траф с Директа, то в чём, собственно, проблема?
Ситуация оказалась из разряда "сам дурак". В общем моя иконка содержала в себе четыре варианта:
* 16x16, 8 bit
* 16x16, 32 bit
* 32x32, 8 bit
* 32x32, 32 bit
Вот Яндекс и выбрал восьмибитный, он в выдаче и отображался. Ещё момент. Чтобы иконка не размазывалась в Opera, нужно выставлять разрешение 96dpi. Насчёт альфа-канала не скажу — в выдаче есть и полупрозрачные и с белым фоном.
СПАСИБО! Всё заработало как надо!
Перетряс есть. Очевидно, что пока сменились показатели только у сайтов из ЯК.
У Яндекса действительно очень непрозрачные правила и ведёт он себя очень агрессивно по отношению к сайтам. Но приходится признавать, что доля рынка, которой владеет Я пока очень и очень немаленькая. И сбрасывать ПС со счетов как минимум неразумно — посетители есть посетители и бороться за них приходится в не зависимости от их источника.
Другое дело, что РуНет сама по себе очень агрессивная среда. И если бы не механизмы Я, то ГС клепались бы миллионами на полном автомате. Но всё же это не оправдывает того, что честные вебмастера должы жить, постоянно переживая за свои сайты.
Откровенно не тот случай для использования защищённого протокола))
ijk добавил 23.09.2011 в 11:42
Спасибо за ссылку. Ценная информация.
Спасибо за подсказку. Но в любом случае, даже при использовании сторонних библиотек, хочется понимать суть процесса, чтобы не делать глупых ошибок.
Если брать теорию, то я так верно всё понимаю:
1. Храним в базе username и md5(passwd) или любой другой хэш.
2. При заходе пользователя на страницу, проверяем, записано ли у него в сессии username и logged_in = true, тогда он залогинен.
3. Если в данных сессии ничего нет, проверяем куку. В ней должен быть username и хэш нашего пароля. Если всё сошлось, стартуем сессию.
4. Если и куки нет, то предлагаем пользователю форму ввода логина и пароля. После чего отправляем ему куку и, заоодно, стартуем сессию.
Насколько понимаю, в сессии можно хранить всё, что угодно, в том числе категорию user'а, т.к. эта информация хранится на сервере.
Если я в чём то не прав, подскажите, пожалуйста.
Увы, так не работает(( Думаю потому, что сначала идёт группировка, а потом уже упорядочивание по рейтингу.
SELECT MAX(id) AS id, type, (SELECT rating FROM rates WHERE id = posts.id) AS rating FROM posts GROUP BY type ORDER BY rating DESC LIMIT 5
Через временные таблицы удалось провернуть всё, но скорость работы упала в 100 раз((
ijk добавил 22.09.2011 в 18:30
Победа! Не факт, что оптимально, но приемлемо. Запрос:
SELECT MIN(posts.id), posts.type, rates.rating FROM posts, rates JOIN (SELECT MAX(rates.rating) as MaxR, type FROM posts, rates WHERE posts.id = rates.id GROUP BY type ORDER BY MaxR DESC LIMIT 5) as y ON rates.rating = y.MaxR
WHERE posts.id = rates.id
GROUP by type
ORDER by rates.rating DESC
LIMIT 5
Суть такова:
1. Считаем макс. рейтинг по каждому типу и выбираем пять различных типов с максимальными рейтингами (внутри JOIN).
2. Выбираем посты с такими же рейтингами и следим, чтобы тип оставался уникальным.
3. На всякий случай делаем LIMIT 5 в конце, если есть много разных статей с равными макс. рейтингами.
Вроде должно работать верно. Спасибо всем за обсуждение и вклад в решение проблемы!