Mailinglisten-Archive |
Hallo Marcel,
> du musst die Formular-Variablen nach dem Ändern neu in der Session
> registrieren ...
OK. Ich dachte, dass tue ich auch; habe meinen Beispielcode
beigefuegt (hoffe, das Beispiel ist nicht zu lang);
ich registriere meine Variable $test nachdem die Werte
gecheckt und fuer gut befunden wurden; damit sollten
doch auch Aenderungen in der Session wieder auftauchen?
Tun sie aber nicht. Hat jemand eine Idee, was ich falsch
mache?
------------>snip<-----------------------------
<?php
page_open(array("sess" => "fdr_Session"));
$form = new Form;
$form->ae(array("type" => "text",
"size" => "40",
"name" => "test",
"value" => "$test",
"max_l"=>20,
"min_l"=>1,
"length_e"=>"Bitte Text eingeben...",
"valid_regex"=>"^[a-zA-ZäöüÄÖÜß0-9\. -]*$",
"valid_e"=>"Bitte keine Sonderzeichen..."
));
$form->ae(array("type" => "submit",
"size" => "120",
"name" => "submit",
"value" => "Daten abschicken"));
$form_ok = false;
/**
* form submitted
*/
if($submit) {
// check sent values
$error = $form->ext_validate();
$form_ok = true;
// if invalid entry, set $form_ok = false
// skip check for $submit
while(list($k, $v) = each($error)) {
if($v != false and $k != "submit")
$form_ok = false;
}
if ($form_ok) {
// process form values here
$sess->register("test");
page_close();
echo "Daten werden in Session abgelegt und
verarbeitet...<p>";
print "Wert von TEST: <b>" .$test.
"</b><p> </p>";
// DEBUG
var_dump($HTTP_POST_VARS);
} else {
// load sent form values again for correction
$form->load_defaults();
}
}
// show form
if (!$submit or ($submit and !$form_ok)) {
// extra html to display errors
$open_html = "<br><font face='arial, sans-serif' size='-2'
color='#FF0000'><b>";
$close_html = "</b></font><br>";
$url = $sess->url($PHP_SELF);
$form->start("", "post", $url, "_self");
//print ("<font color=#FF0000>" .$error["test"].
"</font><br>");
if("" != $error["test"]) {
$f_test = $open_html .$error["test"]. $close_html;
} else {
$f_test = "";
}
$f_test .= $form->ge("test");
print $f_test;
$form->show_element("submit");
$form->finish();
}
?>
--------->snap<-------------------------------
Gruss
Martin
--
************************************************************
* sym.net - martin butz & christoph siefer gbr
* zwirnerstrasse 26 - 50678 koeln - 0221/3762591
* email: butz_(at)_sym.net - netz: http://www.sym.net
php::bar PHP Wiki - Listenarchive