Я получаю данные из базы, создаю массив записываю в него все данные.
Вопрос, как выбрать з этих 22 новостей 5 случайных? (Чтобы не повторялись)
$ro = mysql_query("SELECT * FROM news LIMIT 22");
$x = array();
$i = 0;
while ($row = mysql_fetch_assoc($ro)) {
$i++;
$x[$i][$i] = $row['id'];
$x[$i][$i+1] = $row['text'];
$x[$i][$i+2] = $row['user'];
}
Спустя 19 минут, 50 секунд (10.10.2010 - 14:16) rocker написал(а):
$v = array_rand($x,5);
Ну а дальше не идет ничего в голову...
Спустя 21 минута, 5 секунд (10.10.2010 - 14:37) Xpund написал(а):
Надо через for $i=5
Скорее всего =)
Скорее всего =)
Спустя 17 часов, 53 минуты, 16 секунд (11.10.2010 - 08:31) demonichka написал(а):
Так. Для чего мы сначала выбираем 22 новости а потом из них 5?
Спустя 21 час, 26 минут, 36 секунд (12.10.2010 - 05:57) maxims написал(а):
можно так
а потом выбирай первые пять.
shuffle($x);
а потом выбирай первые пять.
Спустя 3 часа, 27 минут, 48 секунд (12.10.2010 - 09:25) sergeiss написал(а):
SELECT * FROM news LIMIT 5 order by rand()
Можно и другие подобные варианты, в зависимости от того, что тебе нужно. Но это хорошо только для небольших таблиц.
Спустя 2 минуты, 16 секунд (12.10.2010 - 09:27) arvitaly написал(а):
Цитата |
Можно и другие подобные варианты, в зависимости от того, что тебе нужно. Но это хорошо только для небольших таблиц. |