optionaler Bereich
Jones
- programmiertechnik
Hi Leute
Ich möchte durch einen klick einen bereich anzeigen und auch wieder verschwinden lassen....aber nicht als layer sondern als "wirkliches" dokument.
ich stell mir das halt mithlife einem reload der seite vor.
das problem ist nur wenn ich das in einem formular verwende sollten die weiter oben bereits ausgefüllten felder nicht wieder geleert werden.
und jetzt anders herum: kann man gewiesse bereiche ausschließen und durch einen klick (link, checkbox, völlig egal) wieder anzeigen?
ich hoffe ich habe mich verständlich ausgedrückt...oder besser ich hoffe ich habe auch wirklich das gesagt was ich denke :-)
Könnt ihr mir sagen wo ich über dies infos finde und falls bei selfhtml wo? denn mit meinen suchbegriffen bin ich noch nicht weit gekommen.
danke baba
Hello,
Ich möchte durch einen klick einen bereich anzeigen und auch wieder verschwinden lassen....aber nicht als layer sondern als "wirkliches" dokument.
ich stell mir das halt mithlife einem reload der seite vor.
Welche Serverunterstützung hast Du denn zur Verfügung? PHP, PERL, "ASP", ... ?
Dann ist sowas mit und ohne Session leicht möglich.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo
Welche Serverunterstützung hast Du denn zur Verfügung? PHP, PERL, "ASP", ... ?
php und perl
danke für die hilfe
Jones
Hello,
Welche Serverunterstützung hast Du denn zur Verfügung? PHP, PERL, "ASP", ... ?
php und perl
Dann musst Du erst einmal dafür sorgen, dass die erfassten Daten von den angezeigten gelöst werden, das bedeutet also, dass sie nicht nur in den angezeigeten Felders des Client-<form> vorhanden sind, sondern (nach dem Post) in einem Backupspeicher. Dafür kommt eine Sessionh in Frage oder aber ein hidden-Field, in dem man die Daten sammeln kann. Bob beide Methoden gleich gut sind, hängt davon ab, wie empfeindlich die Daten sind, wieviele Daten es sind und wie die Navigation stattfindet.
Wenn Du nur mittels Post-Buttons navigierst und die Daten z.B. sowieso am Ende der Erfassung nochmals alle verifizioert werden, bevor sie. z.B. in einer Datenbank landen, dann kannst Du sie ohne weiteres in einen Hidden-Field wieder an den Client mit zurückgeben:
<input type="text" name="data[1][vorname]"
value="<?php echo htmlentities($_POST['data'][1]['vorname'])?>"><br />
<input type="text" name="data[1][nachname]"
value="<?php echo htmlentities($_POST['data'][1]['nachname'])?>"><br />
<input type="text" name="data[1][adresse]"
value="<?php echo htmlentities($_POST['data'][1]['adresse'])?>"><br />
<input type="submit" name="btn[ausblenden]" value="ausblenden"><br />
<input type="text" name="data[2][gebdat]"
value="<?php echo htmlentities($_POST['data'][2]['gebdat'])?>"><br />
<input type="text" name="data[2][gebort]"
value="<?php echo htmlentities($_POST['data'][2]['gebort'])?>"><br />
<input type="text" name="data[2][beitrag]"
value="<?php echo htmlentities($_POST['data'][2]['beitrag'])?>"><br />
<input type="hidden" name="hid[2]" value="$coded_data">
Soweit erstmal zur Strukturierung der Daten im Formular
Im script verarbeitest Du die Daten und dann kannst Du das gesamte Datenarray
$coded_data = base64encode(serialize($_POST['data'][2])) speichern und verdeckt mit ausgeben.
Alle Felder vom data[2]-teil gibst Du beim generieren des Formulars nicht mit aus, wenn der
Button gedrückt war if(isset($_POST['btn']['ausblenden']))
und da kannst Du Dir auch noch irgendwo im Datenarray merken, bevor Du es serialisierst und
mit base64 verschlüsselst.
Die base64-Verschlüsselung ist der bequemste Weg, HTML-feindliche Zeichen loszuwerden.
Um die verpackten Daten wieder brauchbar zu machen, musst Du ja nur nach dem Post fragen:
if (isset($_POST['hid'][2]))
{
$_data = unserialze(base64decode($_POST['hid'][2]));
}
wenn da nun nur die Daten aus dem auszubolendenen 2. Teil drinstehen, kannst Du die einfach
wieder einem Ausgabearray zuweisen, wenn jemand auf $_POST['btn']['einblenden'] geklickt hat.
$_POST['data'][2] = $_data; ## was natürlich auch in einem Schritt geht.
Selbstverständlich kann man das auch alles mit eienr Sesseion machen, was die
Betriebssicherheit erhöhen würde.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom