[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Рэндомный вывод из базы, но...
Страницы: 1, 2
asdf27
Доброго времени, форум.

Делаю тест, из базы берется вопрос - ответ и примешиваю еще несколько ошибочных ответов.

Как сделать запрос вида

$prav=6; // id правильного ответа
$res=mysql_query("SELECT * FROM `table` WHERE id='6' AND остальные четыре id !='$prav'");

Тут видимо два запроса. Допустим, первый запрос будет $arr[0]=6;
Второй запрос помещу в этот же массив. Как сделать рэндомный вывод без повторений?
Valick
asdf27, ну я был лично для каждого вопроса вместе с правильным ответом(а по хорошему правильных вопросов может быть более одного), прописывал бы и неправильные ответы, так как на вопрос какого цвета помидор, вариант "потому что гладиолус" ....


_____________
Стимулятор ~yoomoney - 41001303250491
bestxp
ну запрос то один
но с union

в первой части ты берешь правильный ответ
union all 3 неправильных
asdf27
Так не выводит первый WHERE id='$id'
$res2=mysql_query("SELECT * FROM marks WHERE id='$id' UNION SELECT * FROM marks WHERE id!='$id' ORDER BY rand() LIMIT 4 ") ;


Так WHERE id='$id' выводит, но первым
$res2=mysql_query("SELECT * FROM marks WHERE id='$id' UNION SELECT * FROM marks WHERE id!='$id' LIMIT 4 ") ;


Как сделать рэндом?
asdf27
Вот так получилось
$res2=mysql_query("SELECT * FROM marks WHERE id!='$id' LIMIT 3 UNION ALL SELECT * FROM marks WHERE id='$id' ORDER BY rand()") ;
asdf27
Теперь другая проблема, дополнительно выводятся ответы из той же категории, с других не цепляются.

----
Догнал, первые 3 значения берутся по-порядку и все принадлежат к одной категории. Как теперь перемешать первый запрос? (WHERE id='$id')
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.