Hallo
Ich habe ein Formular mit 100 vorgegebenen Fragen. Angemeldete Besucher können die Fragen beantworten. Einzelne Fragen unterscheiden sich ja nach Geschlecht des Besuchers. Deshalb hab ich eine Tabelle mit den jeweiligen Fragen:
tabelle question
Feldname: geschlecht, question_1, question_2, question_3, ... , question_100
Datensatz: w, Frage 1, Frage 2, ... Frage 100
Datensatz: m, Frage 1, Frage 2, ... Frage 100
und dann in einer neuen Tabelle die Antworten
tabelle answer
Feldname: user_id, answer_1, answer_2, answer_3, ... , answer_100
Daten: 1, antwort 1, antwort 2, ... antwort100
Wird das Formular abgesendet, werden die Antworten gespeichert
CODE
$AnzahlFragen = 100;
if($_POST['speichern'])
{
for($count = 1; $count <= $AnzahlFragen; $count++)
{
$eintrag = "UPDATE answer SET answer_" .$count. " = '".$_POST['vip_'.$count.'']."' WHERE uid = '$ID'");
$eintragen = mysql_query($eintrag) or die(mysql_error());
}
}
Irgendwie gefällt mir das ganze nicht, hab aber keine andere Möglichkeit gefunden, die Antworten/Fragen in der Datenbank abzulegen. Ausserdem wird ja das Update-Statement 100 Mal ausgeführt.
Vielleicht hat ja jemand eine Idee, wie man das etwas eleganter / einfacher lösen könnte?
Ich habe ein Formular mit 100 vorgegebenen Fragen. Angemeldete Besucher können die Fragen beantworten. Einzelne Fragen unterscheiden sich ja nach Geschlecht des Besuchers. Deshalb hab ich eine Tabelle mit den jeweiligen Fragen:
tabelle question
Feldname: geschlecht, question_1, question_2, question_3, ... , question_100
Datensatz: w, Frage 1, Frage 2, ... Frage 100
Datensatz: m, Frage 1, Frage 2, ... Frage 100
und dann in einer neuen Tabelle die Antworten
tabelle answer
Feldname: user_id, answer_1, answer_2, answer_3, ... , answer_100
Daten: 1, antwort 1, antwort 2, ... antwort100
Wird das Formular abgesendet, werden die Antworten gespeichert
CODE
$AnzahlFragen = 100;
if($_POST['speichern'])
{
for($count = 1; $count <= $AnzahlFragen; $count++)
{
$eintrag = "UPDATE answer SET answer_" .$count. " = '".$_POST['vip_'.$count.'']."' WHERE uid = '$ID'");
$eintragen = mysql_query($eintrag) or die(mysql_error());
}
}
Irgendwie gefällt mir das ganze nicht, hab aber keine andere Möglichkeit gefunden, die Antworten/Fragen in der Datenbank abzulegen. Ausserdem wird ja das Update-Statement 100 Mal ausgeführt.
Vielleicht hat ja jemand eine Idee, wie man das etwas eleganter / einfacher lösen könnte?