felix: Variable aus einer Variable und Nichtvariable erstellen

Hallo,

ich bin noch am wahnsinnig werden ...

Ich habe folgendes. Ich habe ein Bestandsverwaltungssystem geschrieben bzw bin dabei. JEtzt möchte ich gerade mal den Wareneingang in eine MySQL-DB schreiben. Ist ja eigentlich kein Problem ... aber:

Eine while schleife ueberprüft wieviel Artikel eingetragen werden und trägt diese dann auch ein.

Eine Variable die übergeben wird ist: add_artikel_1
Wobei die 1 von der while-schleife bis X hochgezählt wird ($do_while++).

Somit ist beim ersten Artikel die Variable $do_while 1, beim 2. ist $do_while 2 ...

Jetzt muss ich die Variable $do_while (also der jeweilige Wert) hinter $add_artikel_ hängen. $add_artikel_ ist keine Variable erst $add_artikel_ZAHL ist eine.

Wie hänge ich die Zahl so an $add_artikel_ an, dass das MySQL 1. kapiert und 2. auch als Variable erkennt und den Wert von z.B. $add_artikel_1 ausliest ???

Wäre euch seeehrrr verbunden, wenn das einer/mehrer hinbekommen könnte. Ich stehe gerade einfach auf dem Schlauch.

Vielen Dank.

Grüße, Felix

  1. Hi,

    Jetzt muss ich die Variable $do_while (also der jeweilige Wert) hinter $add_artikel_ hängen. $add_artikel_ ist keine Variable erst $add_artikel_ZAHL ist eine.

    Wie hänge ich die Zahl so an $add_artikel_ an, dass das MySQL 1. kapiert und 2. auch als Variable erkennt und den Wert von z.B. $add_artikel_1 ausliest ???

    ${'add_artikel_' . $do_while}

    du kannst also innerhalb der geschweiften Klammern von ${} jeden beliebigen String zusammensetzen, siehe http://www.php.net/manual/de/language.variables.variable.php.

    Gruß,
    Andreas.

    1. ${'add_artikel_' . $do_while}

      du kannst also innerhalb der geschweiften Klammern von ${} jeden beliebigen String zusammensetzen, siehe http://www.php.net/manual/de/language.variables.variable.php.

      Ahhh, ich hatte es mit () versucht, das deutet jedoch auf ne Rechnung/Funktion hin. Super, genau das war es !

      Ich dank Dir !

      Ich hatte auch auf PHP.net gesucht, jedoch komm ich irgendwie kaum mit der suche zurecht...

      Dank dir nochmal.

      Grüße Felix

  2. Moin!

    Jetzt muss ich die Variable $do_while (also der jeweilige Wert) hinter $add_artikel_ hängen. $add_artikel_ ist keine Variable erst $add_artikel_ZAHL ist eine.

    Wann immer sowas auftritt, solltest du in Wirklichkeit ein Array verwenden. Das macht den Zugriff für dich wesentlich einfacher, es geht auch schneller, es ist für andere durchschaubarer, und es ist schlicht die korrekte Vorgehensweise für so einen Fall.

    Bedenke: Alle Daten aus Formularen SIND bereits in einem Array: $_POST oder $_GET. Wenn deine Daten also vom Benutzer übermittelt wurden und du trotzdem deinen Variablennamen zusammensetzen mußt, dann machst du ohnehin was falsch: Du verläßt dich auf "register_globals=on".

    - Sven Rautenberg