Moin!
Ich will per Post eine anzahl Variablen von einem formular an eine datei übergeben und diese dann dort global machen
Welche PHP-Version? Bei Version 4.0.x hast du etwas Pech: Du kannst über das Array $GLOBALS auf alle global definierten Variablen zugreifen, dort sollte zum Beispiel drinstehen:
echo $GLOBALS['feld1']; // Inhalt von $feld1
Ab PHP Version 4.1.x gibt es superglobale Variablen für den Datenempfang vom Browser mit GET, POST oder COOKIEs. Sie heißen $_GET, $_POST und $_COOKIE (außerdem gibts noch $_SERVER, ggf. $_FILES bei gesendeten Dateien), und du kannst auf sie aus allen Funktionen heraus global zugreifen.
echo $_POST['feld1']; // Inhalt des Formularfeldes mit Namen "feld1"
Allerdings halte ich eine Sache für bedenklich: Wenn du _gute_ Funktionen schreiben würdest, würdest du es vermeiden, aus der Funktion heraus auf globale Variablen zuzugreifen. Saubere Programmierung funktioniert so, dass du der Funktion alle Werte als Parameter übergibst, und Ergebnisse der Funktion über "return $ergebnis;" wieder zurückgibst.
Das, was du da versuchst, ist schlecht, weil du deine Funktion nur schwer wiederverwenden kannst. Du bist darauf angewiesen, im Hauptprogramm immer die gleichen globalen Variablennamen zu verwenden, ansonsten funktionert deine Funktion nicht. Wenn du Parameter übergibst, ist egal, wie die Variablen global heißen, innerhalb der Funktion haben sie einen eigenen Namensbereich und gelten nur lokal - können also auch keine Konflikte verursachen.
- Sven Rautenberg
"Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)