Variablen in Formularfelder voreinlesen
james
- php
0 David Hörpel0 Odium0 lulu0 Jürgen K.0 james
Hallo Forum,
hoffentlich hat meine Frage keinen Zweiframes-Status. Ich möchte nämlich in ein Formular mit mehreren Feldern zum Ausfüllen, bestehende Werte vorladen. Es gibt eine Textdatei, die Variablen enthält, die alle Nase lang im Formularfeld geändert werden. Da aber nicht immer alle Werte geändert werden, sondern nur einzelne, wäre es sinnvoll, die aktuellen Werte in die Formularfelder zu laden, damit der Ausfüller nicht immer alle Felder neu ausfüllen muss, sondern nur die relevanten und der Rest bleibt beim absenden so wie er war.
Hat das jemand verstanden? Wie kann ich also Werte aus der Textdatei beinm Seitenaufruf in die Formularfelder vorladen?
Danke und Grüesslie,
James.
Hallo James!
Da gibt es zwei Möglichkeiten.
1.) Für die erste mÖglichkeit brauchst du gar kein Php sondern definierst einfach das Valuefeld des Formularfeldes(Inputfeldes). Da hast du dann schon einen vordefinierten Wert,
2.) Mit Php geht das so: <input type="text" name="test1" value= $variable . Du musst dann nur deine Homepage ganz in Php machen, was auch ganz schön viel Arbeit ist! Da würde ich dir eher Variante 1 empfehlen.
Gruuß David!
Hallo,
du holst deine daten aus der textdate oder db und packst sie in einzelne variablen oder einen array...
wenn du dein html ausgibst musst du halt das valuefeld der <input type="text"> vorbelegen...
<input type="text" name="dername" value="<? echo $variable; ?>">
bei textarea: <texarea...><? echo $ variable; ?></textarea>
Odium
Huhu James
Hat das jemand verstanden?
Nein, nicht wirklich.
Was meinst Du mit Werte aus Text-Datei?
Vielleicht meinst Du so etwas:
$MyDefaults = array(
'Anrede' => 'Frau',
'Beruf' => 'SchülerIn/ StudentIn',
'Wohnort' => 'San Diego'
);
foreach ($MyDefaults as $k => $v){
if( !$_POST[$k]) {
$_POST[$k] = $v;
}
}
Im Formular dann entsprechend
<input type="text" name="Anrede" value="<?php echo $_POST['Anrede']; ?>">
etc.
Viele Grüße
lulu
Hallo,
wenn die Text-Datei eine php-Datei wäre, wärs einfacher. Wenn da dann sowas drinsteht wie $xy='hallo', dann mußt Du die Datei einfach includen und das Formularfeld so schreiben:
<input value="<?= $xy ?>" ...
und dann ist das Feld vorbelegt.
Wenn es unbedingt eine txt-Datei bleiben muß, dann mußt du halt die Datei öffnen, nach der Zeichenkette Variablenname suchen, den dahinterstehenden Wert auslesen und einer entsprechenden Variable zuweisen. Ist etwas umständlicher. Wenns also irgend geht, dann mach eine php-Datei draus, oder eine inc-Datei.
Vielleicht gehts aber auch, wenn Du einfach die txt-Datei includest. Habs nicht probiert.
Die Datei muß aber auf jeden Fall so aussehen:
$xy='hallo';
$ab='wie';
$cd='gehts';
Viele Grüße,
Jürgen
Danke für die Tipps,
aber muss ich nicht, bevor ich den value="<?... setze, die txt-Datei laden? Ich würde das mit
<?
$dateiname="dateiname.txt";
fopen($dateiname,"r");
?>
im <head> machen. Bin ich da auf dem richtigen Weg?
Im Moment werden meine Werte in der Textdatei nach dem Schema "&wert1=eingabewert" gespeichert. Und zwar deshalb, weil sie wiederum Variablen für eine *.swf-Datei darstellen. Bitte keine Armeüberdemkopfzusammenschlagenvorflashschreck. Die Anwendung ist wirklich sinnvoll, es sind Balkendiagramme für die nächste Bundestagswahl, die sich natürlich mit anderen Wahl-Ergebnissen auch ändern müssen. Um die Änderungen so komfortabel wie möglich zu machen, können sie per Eingabefeld und php gespeichert werden.
Jetzt das eigentliche Problem: Um die Variablen ordentlich auslesen zu können, also value=$..., muss ja in der txt-Datei auch stehen:$=... Richtig? Wie muss ich aber dann das "$" maskieren, damit er mir in die Textdatei auch "$" schreibt und nicht den Wert, der dahintersteht?
Ich illustriere das mal mit einem naiven Beispiel:
fwrite(§dateiname, "$wert1=§(§=eingabewert1)")
Etwa so? oder doch anders?
Danke und Grüesslie,
James.
Hallo,
wenn die Text-Datei eine php-Datei wäre, wärs einfacher. Wenn da dann sowas drinsteht wie $xy='hallo', dann mußt Du die Datei einfach includen und das Formularfeld so schreiben:
<input value="<?= $xy ?>" ...
und dann ist das Feld vorbelegt.
Wenn es unbedingt eine txt-Datei bleiben muß, dann mußt du halt die Datei öffnen, nach der Zeichenkette Variablenname suchen, den dahinterstehenden Wert auslesen und einer entsprechenden Variable zuweisen. Ist etwas umständlicher. Wenns also irgend geht, dann mach eine php-Datei draus, oder eine inc-Datei.
Vielleicht gehts aber auch, wenn Du einfach die txt-Datei includest. Habs nicht probiert.
Die Datei muß aber auf jeden Fall so aussehen:
$xy='hallo';
$ab='wie';
$cd='gehts';
Viele Grüße,
Jürgen