Geistiger Hohlraum: Variable wird nicht interpretiert

Beitrag lesen

ich lasse in einer Textbox Html eingeben welches Variablen enthalten kann:

Hallo hier steht mein $name und meine Homepage zeigt auf <a href="$link/meinehomepage">Meine Homepage</a>

<dreinschau ausdruck="verwirrt">Aha.</dreinschau>

danach möchte ich diese Anweisung parsen, sprich die Variablen in den tatsächlichen Inhalt umtauschen.

Normalerweise müßte wohl die Ausgabe des Textes reichen oder?

Dann hast Du den Text zum Browser geschickt.

Aber php interpretiert mir diesen Text nicht.

Geht schlecht, PHP weilt ja noch auf dem Server.

Ich weiß nicht, was Du mit dieser Funktion vor hast, aber ich rate Dir eindringlich davon ab, eine Möglichkeit, mit der man PHP dazu bringt, den Inhalt eines Textfeldes auszuführen, zu nutzen. Statt '$name="bla";' kann man damit genauso gut '$f = fopen("riesig","w"); while (true) fwrite($f, " ");' ausführen. Oder ein PHP-Skript eintippen, mit dem sich in Deinem Namen fünf Millionen Spammails absetzen lassen.

Wenn Du beliebige Variablen eines Skriptes mit einem Textfeld setzen willst, dann gebe ein Format vor, etwa so:

variable=bla bla bla

Und bearbeite dies von Hand, sprich Zeile für Zeile das erste Gleichheitszeichen suchen, den davor stehenden Teil als Variablennamen nehmen und den hinteren als Daten. Trage diese Variablen in ein Array ein, damit sie nicht die Umgebung Deines Skriptes verschmutzen oder skripteigene Variablen überschreiben:

$vars = Array();
foreach ($_POST["textfeld"] as $zeile) { // Zeile für Zeile
  $v = explode("=", $zeile, 2);          // Zeile an erstem = auftrennen
  if (sizeof($v) = 2) {                  // Trennung in zwei Teile geglückt?
      $vars[$v[0]] = $v[1];              // Daten speichern
  }
}

Aus dem Finger geschüttelt, Fehler darfst Du behalten.