julius: verschachtelte variblen???

hallo,

ich habe da ein kleines problemchen mit verschachtelten variablen...

also, man stelle sich vor es existiert eine variable namens $str1, die zB. folgenden string beinhaltet: '$f1', '$f2', '$f3'.

Diese variablen $f1 bis $f3 werden von einem formular an das auswertungscript übergeben.

die werte sollen dann weiterverarbeitet werden und zwar in einem insertbefehl einer Datenbank:

also

INSERT INTO tabname ($spaltennamen) VALUES ($str1);

nur werden in diesem beispiel die werte der variablen nicht übernommen, sondern die variablennamen selbst.

wie kann man das lösen???

für Hilfe wäre ich sehr dankbar...

Julius

  1. Hallo

    Eventuell hilft dir der Befehl implode weiter...
    Er ist hier beschrieben:

    http://www.selfphp.info/funktionsreferenz/string_funktionen/implode.php

    Gruss, Marc

  2. Huhu Julius

    INSERT INTO tabname ($spaltennamen) VALUES ($str1);

    nur werden in diesem beispiel die werte der variablen nicht übernommen, sondern die variablennamen selbst.

    wie kann man das lösen???

    z.B. mit eval

    eval(sprintf('$str2="%s";',$str1));

    dann werden in $str2 die Werte für $f1 etc. eingesetzt.

    Ein anderer Ansatz für die Aufgabenstellung wäre es die Variablenwerte in einem assoziativem Array mit den Spaltennamen als Key abzulegen.

    also z.B.:

    $val['f1']='Huhu';
    $val['f2']='Jupp';

    etc.

    Dann noch ein kleine Funktion basteln welche per foreach-Schleife
    anhand der key/Value-Paare den SQL-Insert-Befehl zusammensetzt.
    Das ist dann leichter zu erweitern und IMHO übersichtlicher und hübscher als eine Konstruktion mit eval.

    Viele Grüße

    lulu