- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee

В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Помогите пожалуйста вот с чем, вот код
$res = mysql_query("SELECT blog_ID, blog_name
FROM evo_blogs
where blog_user_rate > 0
LIMIT 9 , 5");
echo '<ul>';
while ($rowa = mysql_fetch_object($res))
{ echo '<li><a href="http://bloodtar.ru/index.php?blog='.$rowa->blog_ID.'" >'.$rowa->blog_name.'</a></li>';}
echo '</ul>';
это код вывода пяти случайных дневников, со ссылками на них.
но вышеуказанный код выдает только одни и те же дневники. как сделать чтобы брались рандомно любые 5 дневников?
Вас обманули - он выводит псевдослучайно, причём именно одно и то же )
Если записей в таблице немного, то "limit 9,5" замените на "order by rand() limit 5". Если много записей, то лучше переписать всё.
Много - это несколько тысяч.
Вас обманули - он выводит псевдослучайно, причём именно одно и то же )
Если записей в таблице немного, то "limit 9,5" замените на "order by rand() limit 5". Если много записей, то лучше переписать всё.
Много - это несколько тысяч.
меня не обманывали, код я писал сам:) наверно обьяснил не правильно. я в php полуновичок.
записей около 500, но будет само собой горааздо больше. как же переписать-то?
не парьтесь, добавьте ORDER BY RAND() в запрос как вам сказали
не парьтесь, добавьте ORDER BY RAND() в запрос как вам сказали
хотел чтобы все было практично. спасибо, сделаю
Практично - это например добавлять уникальное случайное значение к каждой записи. Потом сортировать по этому значению и, как вариант при каждом постинге менять эти значения...
Практично - пойти на компромисс и использовать к order by rand() дополнительное ограничение. Например, выбирать случайные среди активных за последние 3 месяца.
Остальные способы обхода действительно серьёзной проблемы, связанной с производительностью order by rand(), у вас не окупятся.
Если записи не удаляются из базы данных, то можно таким подходом воспользоваться
Один из нормальных путей это:
1) получить MIN(id), MAX(id);
2) сгенерировать 50 штук чисел между этими значениями;
3) Сделать или 50 запросов, или сделать id = IN(число, число, число, число ....), или через UNION. Всё это ориентируясь на последовательность полученных в п.2 значений
4) полученные результаты перевести в массив, а его в свою очередь сериализовать и положить в кеш, обновлять вышеуказанным способом раз в сутки.
5) Доставать массив разсериализовывать и доставать оттуда случайным образом 5 значений, выводить их.
Моменты на которые стоит обратить внимание:
1) если в п.3 есть ещё какие-то WHERE, то обязательно нужно делать индексы, а лучше составные.
2) мы можем получить не 50, а меньше значений - так как некоторые посты могут быть удалены, в скрипте нужно учитывать это.
3) этот пункт для тех, кто может заметить, что здесь псевдослучайность - обычный пользователь врядли будет смотреть больше 10 страниц, а постоянные посетители врядли будут смотреть на случайные посты.
В целом данный способ испробован и успешно работает, а почему б ему не работать :), на сайте с несколькими десятками тысяч уников (от 30 до 80, в среднем - 40-50К), записей где-то около 5-6 тысяч. Проблемы были только один раз, поэтому я и настаиваю на составных индексах, тогда всплыла проблема как раз с этим.
p.s. общий принцип похож на описанный выше modobaks'ом.
При нескольких тысячах дневников можно использовать RAND() как параметр LIMIT
xant, тут ещё возникает момент, есть ли текстовые поля в таблице, и насколько они заполнены.