[QF] - setConstants() messign up elements value?

From: Date: Thu, 29 Jan 2004 12:22:19 +0000
Subject: [QF] - setConstants() messign up elements value?
Groups: php.pear.general 
Request: Send a blank email to pear-general+get-10421@lists.php.net to get a copy of this message
Hi all, I have the following (pseudo)code: [..] $sform->addElement('text', '_date', 'Date: ', ''); $sform->setDefaults(array('_date'=>date('d.m.Y'))); [..] if ($sform->validate()) { [..] // convert dd.mm.YYYY to YYYYmmdd format to put it into DB $sform->applyFilter('_date', 'prepare_date'); if ($add_mode) { echo '1: '.$sform->getElementValue('_date'); [put data into DB] $id = mysql_insert_id($db->connection); $sform->setConstants(array("id"=>$id)); echo '2: '.$sform->getElementValue('_date'); } elseif ($edit_mode) { [update record in DB] } } [..] Everything's working fine except with '_date' field. 1) open page with form to add new record 2) submit with correct values 3) above code outputs: 1: 29.01.2004 2: 20040129 Why does seConstants() for "id" field change "_date" field value????? And more why, though getElementValue() "Returns the element's raw value such as submitted by the form (not filtered), set by setDefaults() or setConstants(). " (quoted from QF docs) I get filtered value of "_date" field, but only after setConstants() even not touching "_date" field? I'm confused. Any help appreciated. -- Best regards, Sebastian

« previous php.pear.general (#10421) next »