#015657: Column names returned are converted to lowercase

Description:

Session handler returns all columnames in lowercase causing unwanted errors.

I'm using eZComppnents 2008.2.2.

View code posted in pastebin. My errors for that code looks like this:

Notice: Undefined index: id in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Undefined index: id in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Undefined index: firstname in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Undefined index: firstname in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Undefined index: lastname in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Undefined index: lastname in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Undefined index: gender in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 57 Notice: Undefined index: gender in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Notice: Trying to get property of non-object in /usr/share/php5/PEAR/ezc/PersistentObject/internal/state_transformer.php on line 58 Fatal error: Cannot access empty property in /home/sites/php5.nifab.no/www/ezcomponents/person/classes/Person.php on line 28

My fix was to change some attribute for the db handler:


$db->setAttribute( PDO::ATTR_CASE,  PDO::CASE_NATURAL );


Environment:

Operating System:
PHP Version: 5.2.5
Database and version:
Browser (and version):


Steps to Reproduce:

- Attachments

No attachments for this issue.


- Comments

Database: MySQL 5.0.26

#263510 by Børge Warvik on October 14th, 2009 [Permanent Link]

The lowercasing of column names is done intentionally. Some relational database management systems, like Oracle, are always uppercasing the column names, thus the code wouldn't be portable across RDBMS if the case would be kept.

The only solution to this problem is to either always lower- or uppercase the column names for all RDBMS. We decided to lowercase the column names.

Reassigning to ts, to document this for Persistent Object.

#264768 by Kore Nordmann on February 18th, 2010 [Permanent Link]

This is not a documentation problem, but an issue in the PersistentObject code. I'll try to re-open the bug now.

#264769 by Tobias Schlitt on February 18th, 2010 [Permanent Link]

Re-opening as stated before.

#264770 by Tobias Schlitt on February 18th, 2010 [Permanent Link]

Fixed in rev. #11419.

Column names are now converted to lower case for extraction of database values.

#265396 by Tobias Schlitt on March 19th, 2010 [Permanent Link]

- History
Properties
Type Bug
Priority Medium
Components Components » PersistentObject
Documentation
Affects Unknown
Fix Version -
Reporter Børge Warvik
Responsible Tobias Schlitt
Status 0 Closed
Resolution Fixed
Created October 14th, 2009
Updated March 19th, 2010
Resolved March 19th, 2010
 
Navigation [Permanent Link]
Previous Issue
Back to Issues List
Next Issue: #015537
  Graph shows to small and truncated rotated axis labels