Tabelle mittels Variable auswählen

Zuerst mal vielen vielen Dank für deine Bemühungen.
Soweit hab' ich das gerafft, ich hänge nur daran mir den Wert des jeweiligen Radiobuttons
ausgeben zu lassen, da die Variable (also bsp. $rnameFrage) nicht erkannt, bzw. keinen Wert hat. Wenn ich das mal habe ist das Schreiben in die DB ja kein Problem mehr.
Wenn ich anstatt von $rnameFrage bsp. nur "Frage" eingebe funktioniert es ja.

Notice: Undefined variable: rnameFrage in C:\Programme\xampp\htdocs\test\include.php on line 31

Den Fehler versteh' ich ja, nur auf die Lösung komm ich nicht.

Ausgabe:

PHP:
echo $_POST["$rnameFrage"];
 
Hi,

*schmunzel* dass das passiert war mir fast klar. Ok war mein Fehler, ich habs so geschrieben das du es am leichtesten verstehst, funktionieren tuts so natürlich nicht, da du die Variable $rname und den String "Frage" nicht so einfach zusammenschreiben kannst.
Häts vielleicht gleich richtig schreiben sollen. So dann hier nochmal alles :)
PHP:
 {   
   $rname = $row[0];
   $rFrage = $rname."Frage";
   echo "$rname
  <table>
   <tr><td>Unterrichtsvorbereitung</td> 
   <td><input type=\"radio\" name=\"$rFrage\" value=\"1\"></td>
   <td><input type=\"radio\" name=\"$rFrage\" value=\"2\"></td>
   <td><input type=\"radio\" name=\"$rFrage\" value=\"3\"></td>
   <td><input type=\"radio\" name=\"$rFrage\" value=\"4\"></td>
   <td><input type=\"radio\" name=\"$rFrage\" value=\"5\"></td>
   <td><input type=\"radio\" name=\"$rFrage\" value=\"6\"></td>
   </tr></table>";
   /** Variable die alle Namen enthällt **/
  $rnameall = $rnameall."+".$rname;
}
echo "<input type=\"hidden\" name=\"namesall\" value=\"$rnameall\">";
so, damit stimmt das Formular. Ich hab dir noch ein Feld gezimmert das dir beim versenden alle Namen mitschickt, so sparst dir das zweite auslesen der Datenbank beim verarbeiten der Formulardaten. Hier noch das Beispiel wie du das ganze wieder zerlegst:
PHP:
$namesall = $_POST['namesall'];
$allenamenarray = explode("+", $namesall);
foreach($allenamenarray as $name){
 /** Name **/
 echo "Name: ".$name;
 /**+ Wert der Frage **/
 /**++ Name des Feldes **/
 $fieldname = $name."Frage"; 
 /**++ Werd auslesen **/ 
 $wert = $_POST[$fieldname];
 /**++ Wert ausgeben**/
 echo "Wert: ".$wert;
}
So, das sollt dir jetzt helfen deine Formulardaten schön sauber zu verarbeiten :) Und nur so als Rat, nicht alles abschreiben, wenn du es verstehst bringts dir mehr :)
 
Zuletzt bearbeitet:
Du bist der Beste!
Und mit dem Verstehen wird's sicher bald :).
Danke!

Ähm... geht leider noch nicht ganz:
Notice: Undefined variable: rnameall in C:\Programme\xampp\htdocs\test\include.php on line 37

Notice: Undefined index: Frage in C:\Programme\xampp\htdocs\test\formular.php on line 15
 
Zuletzt bearbeitet:
Hab' jetzt schon eine Weile herumgetestet, leider noch immer dasselbe Problem dass die Werte zwar übergeben werden, ich sie aber nicht weiterverarbeiten kann.

PHP:
$namesall = $_POST['namesall'];
$allenamenarray = explode("+", trim($namesall,'+'));
foreach($allenamenarray as $name) {
  echo "Name: ".$name;
  $fieldname = $name."Frage";
  if (empty($_POST[$fieldname])) {
    echo "Cannot find [{$fieldname}]<br />";
  } else {
    $wert = $_POST[$fieldname];
    echo "Wert: ".$wert;
  }
}

array(4) {
["Name1Frage"]=>
string(1) "3"
["Name2Frage"]=>
string(1) "1"
["Name3Frage"]=>
string(1) "2"
["namesall"]=>
string(55) "Name1+Name2+Name3"
}
Name: Name1Cannot find [Name1Frage]
Name: Name2Cannot find [Name2Frage]
Name: Name3Cannot find [Name3Frage]

Verzweifelt, bin:(
 
Zurück