Есть таблица words куда записаны слова, которые нужно отгадать в какой то игре. И есть таблица my_words куда записываются слова, которые пользователь уже отгадал: id_user(ид юзера), id_word(ид слова из таблицы words).
Дается слово юзеру вот так: mysql_fetch_assoc(mysql_query("select * from `words` order by rand() LIMIT 1"));
Но как сделать так, чтобы пользователю не попалось слово которое он уже отгадал?
if (mysql_num_rows("SELECT * FROM `my_words` WHERE `id_user` = '$user_id' AND `id_word` = '" . $word['id'] . "') == 0) {
echo 'Вопрос:';
}
Сделал на примере джона.
Переменную $word замени на свою, и в исполнительной части условия echo 'Вопрос:'; замени на свой вывод вопроса
Спасибо помог.
$id = mysql_fetch_assoc(mysql_query("select * from `words` order by rand() LIMIT 1"));
if(mysql_num_rows(mysql_query("select * from `my_words` where `id_user` = '$user[id]' and `id_word` = '" . $id['id'] . "'")) == 0){
использовать rand() не рекомендуется - большая нагрузка
если таблицы две, в одной слова, в другой уже отгаданные слова, можно использовать if not exists в запросе
или join