Har en databas med följande tabeller och fält:
question
id || question
alternative
id || question_id || alternative
answer
id || alternative_id
Ni har säkert redan räknat ut vad det här rör sig om, och relationerna mellan tabellerna, men för att göra det hela lite tydligare kan jag förklara ändå:
Vad jag försöker göra är en poll. Varje fråga (question) från tabellen question har ett id, som används i tabellen alternative i fältet question_id. Dvs, om en fråga har id:et 1, och några inlägg i tabellen alternativ har question_id 1, så hör dessa tabeller ihop på det stället. I answer sparas alla röster. Tabellen har ett id, precis som alla andra, och ett fält som heter alternative_id, där alternativet för frågan som användaren skickat in sparas.
När jag försöker göra ett formulär av tabellerna question och alternativ, så stöter jag på ett problem, nämligen att frågan fortsätts att skrivas ut efter varje alternativ.
Detta:
$result = mysql_query("
SELECT question.question, alternative.alternative
FROM question
LEFT JOIN alternative
ON question.id = alternative.question_id
");
while ($row = mysql_fetch_array($result)) {
echo $row["question"]. "<br>";
echo "<input type=\"radio\" name=\"blah blah\" title=\"Holy shit\">". $row["alternative"]. "</input>";
}
kan ge tex:
Fråga
alt Fråga
alt Fråga
alt Fråga
Men det är ju inte så jag vill ha det. :) Jag vill ha:
Fråga
alt
alt
alt
Nästa fråga
alt
alt
alt
Vet inte riktigt hur jag ska göra för att få till detta! Borde ju ha något med en while-sats inuti while-satsen att göra, men vad jag behöver skriva för att få det resultat jag vill.. tja, det vet jag som sagt inte. :)
Vore grymt tacksam för svar. :)