Home » Database » DB_DataObject_FormBuilder » Bug #6344
non-rendered boolean fields being overwritten by default
Details
| Submitted | 2005-12-25 00:51 UTC |
|---|---|
| From | l dot nienhaus at gmail dot com |
| Assigned | justinpatrin |
| Status | Closed |
| Package | DB_DataObject_FormBuilder |
| PHP Version | 4.3.1 |
| Roadmaps | (Not assigned) |
Comments
[2005-12-25 00:51 UTC] l dot nienhaus at gmail dot com
Description:
------------
Hi, I just encountered another issue with boolean fields:
I defined two fields of a table as being boolean, which so far works fine.
Somewhere else in my application I use the same DataObject / Formbuilder but with these two boolean fields not being rendered (but still being defined as boolean, using the booleanFields array).
But: actually it still gets written into the database with the default value of 0 (overwriting possible existing values) instead of being ignored, what in my eys should be the case, because the fields are not rendered.
Test script:
---------------
foreach ($this->booleanFields as $boolField) {
if (!isset($values[$boolField])) {
$this->_do->$boolField = 0;
}
}
Formbuilder.php, processForm() method
i think here it should be checked, whether a field is being rendered, before giving it a default value