Moin!
Falls mein Rechner mal aus oder offline ist: hier der Quelltext für's Forum.
<html>
<h3>Auswertung:</h3>
<?php
$Array = array("F1", "F2", "F3");
for($i = 0; $i < count($Array); $i++)
{
$testname=$Array[$i];
# Nur zur Vereinfachung...
$test_eval="@$$testname = $_GET['".$testname."'];";
# In die Variable wird etwas geschrieben, was letztendlich eine Zeile PHP- Code ist.
# Im ersten Fall (Array[0]="F1") entsteht: "@$F1 = $_GET['F1'];"
# Damit dürfte dann auch klar sein, warum die "$" mit "" maskiert wurden.
# Das "@" muss hinein, damit keine Fehlermeldungen entstehen.
echo "eval($test_eval);<br>";
# Das dient hier nur zur Ausgabe im Beispielscript.
eval ($test_eval);
# Der Code, der in der Variable ist, wird ausgeführt.
$test_eval='echo "'.$testname.' = $'.$testname.'<br>";';
eval ($test_eval);
# Das gleiche Spiel nochmal...
}
?>
<hr>
<h3>Formular:</h3>
<form action="test2.php" method="GET" target="_self">
<?php
for($i = 0; $i < count($Array); $i++)
{
echo '<input type="Checkbox" name="'.$Array[$i].'"> '. $Array[$i].'<br>';
}
?>
<input type="Submit" name="" value="senden">
</form>
<hr>
<h3>Quelltext:</h3>
<?php show_source("test2.php"); ?>
</html>
fastix®
Hier noch ein paar Stichworte für die Suche:
Dynamisch Anzahl Formularelemente, Input, Werte, auswerten