Variablennamen dyn. erzeugen / eval() oder so

cocoon

Erfahrenes Mitglied
Hey Jungs,

hätte mal 'ne Frage. Das wurd' glaub' ich auch schon hier behandelt (hab' mal nach "eval" gesucht), aber irgendwie bin ich daraus nicht so ganz schlau geworden - sorry.. :-( :rolleyes:

Ich geb' alle Einträge einer mySQL-Tabelle aus, jede Reihe kriegt eine Checkbox mit der ID als Namen. Wenn das Formular jetzt abgeschickt wird, möchte ich die Werte aller Checkboxen haben, indem ich mit 'ner for-Schleife von der ersten bis zur letzten ID durchlaufe. Allerdings müsst ich dazu irgendwie die jeweilige Variable dynamisch erzeugen. Hab' das mal irgendwie mit eval("$ch", $count) probiert, aber das funzt net so.. (<-- "$ch1", "$ch2", usw. heissen die Checkboxen)

Wär nett, wenn mir Jemand auf die Sprünge helfen würde, auch wenn's nicht sooo anspruchsvoll ist.. :rolleyes:

Danke schonmal...
 
$var1 = "blub"
$var2 = "foo"

$$var1 = 1;
bedeutet = $blub = 1;

$$var2 = 2;
bedeutet = $foo = 2;

So erzeugt mann dynamische Variablen
 
Super HolyFly, klappt bestens! Thanx! :)

@evoc: Gibt mir immer noch 'n Fehler aus, dass er 'ne Variable will ("T_Variable or $ expected" o.ä.).. :( Trotzdem Danke für Deine Mühe! :)
 
Ist auch ein kleiner Fehler drin.
So ist es richtig:

PHP:
  $ch1 = "variable";
  $ch2 = "Variablen";
  $ch3 = "zusammen-";
  $ch4 = "setzen";
  for ($i<1;$i<5;$i++)
  {
    echo ${"ch$i"}."<br>";
  }
so gehts.
 
Hallo zusammen!

Mit Arrays funtioniert das bei mir aber nicht. Ists so falsch?

PHP:
// Dynamisches Generieren des assoziativen Index von $_POST
$result_num = 5;
for ($i= 0; $i<$result_num;$i++) {
	$post = ${'_POST["text_field"+$i]'};
	echo $post;
}


gruss Lukas
 
Zurück