PHP-Funktion für input-Feld

Oh, schuldigung, hab vergessen.

Das Formularfeld wird durch eine Funktion erstellt, wodurch diese Post Variante nicht mehr korrekt funktioniert.

Die Codes sind oben
 
Wieso?
Entweder du machst die neu definierten Variablen des POST Arrays global so das du innerhalb der Funktion auf sie zugreifen kannst.

Oder du lässt die neu definition bleibe und greifst direkt aufs POST Array zu da das soweit ich mich erinnern kann eh global ist und somit von der Funktion angesprochen werden kann.

Oder du erweiterst die Funktion um einen optionalen Parameter und übergibst die Werte dann dementsprechend.
 
Dann versuche es doch mal mit :

PHP:
class formular
{
	/**
	 * input-felder erstellen
	 *
	 * @param string $f_name		name des feldes
	 * @param string $f_art			art des feldes (text, password usw)
	 * @param string $f_value		value des feldes
	 */
	public function get_form_input($f_name, $f_art, $f_value = false)
	{
		return '<input type="' . $f_art . '" name="' . $f_name . '" value="' . (($f_value == false) ? '' : addslashes($f_value)) . '" size="40">';
	}

	public function get_form_area($f_name, $f_value, $width = 5, $height = 10)
	{
		// daten von textarea
	}
}

Ausgeben kannst du es mit :

PHP:
echo formular::get_form_input('hallo', 'text', 'user');

oder wenn value leer sein soll:

PHP:
echo formular::get_form_input('hallo', 'text');
 
Danke für eure Hilfe,

aber nichts funktioniert so wie ich will.

Hab das Problem jetzt anders gelöst.

Also für die, die es interessiert:

Ich habe ne Funktion geschrieben, die als return den HTML-Code für nen Formularfeld hat. Innerhalb des Textes sind zwei Platzhalter (ein und die selbe Variable).


Ich lasse per Funktionsaufruf alle Formularfelder erstellen.

Bis hierhin ist das der Code, aus meinem ersten meinem ersten Beitrag.

Der Unterschied ist nun, ich lasse mir das Formularfeld als HTML-Code ausgeben, also mit echo htmlspecialchars(blablabla), und voila, ich bekomm den ganzen HTML-Code generiert und kann nachträglich anpassen, ergänzen usw.

Danke an alle, aber die Formularfelder haben sich bei allen Varianten nach dem Senden immer wieder zurück gesetzt und das entspricht nicht dem, wie ich s brauche. Trotzdem danke an alle Vorschläge.

Gruß, Adnan
 
Zuletzt bearbeitet:
Ich poste mal den ganzen Quellcode, falls es irgendwer braucht^^ DANKE nicht vergessen :D

HTML:
$datei = "test.txt"; // Name der Textdatei mit komplettem Inhalt
$array = file($datei); // Datei in ein Array einlesen
foreach ($array as $element) {
     $x = '<input name="' . $element . '" type="text" size="30" maxlength="50" value="' . $element . '"">';
     echo htmlspecialchars($x);
     echo '<br/><br/>';
}

Und das Highlight ist die Textdatei.
Text.txt:
Code:
auto's sehen 
waschen 
und 
wieder 
gehen

Aus beiden erstellt er mir den Quellcode, um ein Fomular mit vielen Felder zu erzeugen :-)

Die Ausgabe sieht dann wie folgt aus:

Code:
<input name="auto's sehen " type="text" size="30" maxlength="50" value="auto's sehen "">

<input name="waschen " type="text" size="30" maxlength="50" value="waschen "">

<input name="und " type="text" size="30" maxlength="50" value="und "">

<input name="wieder " type="text" size="30" maxlength="50" value="wieder "">

<input name="gehen " type="text" size="30" maxlength="50" value="gehen "">

Gruß, Adnan
 
Zuletzt bearbeitet:
Zurück