在我的網站上,我有一個頁面,用戶可以一次回答一個問題。 提供的問題存儲在問題表中。 當用戶回答問題時,它將存儲在答案表中。 回答完一個問題後,轉到下一個問題。用於在DB中選擇行的SQL
我的代碼的工作方式現在是它從問題表中選擇一個問題,然後加入答案表WHERE answers.id IS NULL
。 (用戶還沒有回答這個問題。)
我需要它的工作方式類似於上面,除了它還需要檢查問題是否已被用戶回答,並且如果它有不顯示它並轉到用戶未答覆的下一個問題。
我希望我已經解釋得很清楚了。
我目前使用
$db = db_open();
$query = "SELECT
questions.id,
questions.question
FROM questions
LEFT JOIN answers ON questions.id = answers.question
WHERE answers.id IS NULL
GROUP BY questions.id";
$result = db_query($db,$query);
$result = db_fetch_array($result);
$default_question = array("id"=>$result["id"],"question"=>$result["question"]);
問表
id question
1 This is a question
回答表
id user question answer
1 1 1 This is an answer
代碼
你'answers.id'是主鍵我guess.correct? – user2936213
對不起,我仍然覺得你想要的東西有點混亂。你是否在討論如果某個特定用戶沒有回答這個問題? –
假設兩個用戶正在回答問題。他們都得到同樣的問題。如果用戶1先回答,他會得到下一個問題,用戶2仍然是第一個問題。它需要這樣工作。我認爲這是解釋它的一種更簡單的方法。 –