From:             joesterg at hotmail dot com
Operating system: Windows 2000 Server
PHP version:      5.0.3
PHP Bug Type:     Strings related
Bug description:  when using trim(...) loop stops

Description:
------------
Whenever trim(...) is used on the 
  $value=trim($colstr->value);
line, the loop stops. 
However, splitting the line in two:
  $value=$colstr->value;
  $value=trim($value);
makes the loop work as expected...

Reproduce code:
---------------
$this->DBResult=$this->DBCon->Execute($sqlQuery);
$num_columns = $this->DBResult->Fields->Count();
$this->DBResultSet=null;
        for($i=0; $i < $num_columns; $i++) {
          $colstr=$this->DBResult->Fields($i);
          $name=$colstr->Name;
          toLog("DB_ADO.query","3.0: i=".$i.",
Fields=".$colstr."/".$name.", num_columns=".$num_columns);
          $value=trim($colstr->value);
          toLog("DB_ADO.query","3.1: i=".$i.",
Fields=".$colstr."/".$name."/".$value.", num_columns=".$num_columns);
          $this->DBResultSet[$rowcount][$name]=$value;
          toLog("DB_ADO.query","3.2:
this->DBResultSet[rowcount][name]=".$this->DBResultSet[$rowcount][$name]);
        }


Expected result:
----------------
DBCon is an ADO connection to SQL Server 2000.

I expect to have the code loop through the columns found in the query,
assigning each column a value in the DBResultSet array.

Seeing the following in the log:

2005.01.24-21.43:02***DB_ADO.query***1: select statement
2005.01.24-21.43:02***DB_ADO.query***2: num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.0: i=0, Fields=4/id,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=0, Fields=4/id/4,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=4
2005.01.24-21.43:02***DB_ADO.query***3.0: i=1, Fields=jqj/username,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=1, Fields=jqj/username/jqj,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=jqj
2005.01.24-21.43:02***DB_ADO.query***3.0: i=2,
Fields=8ad8757baa8564dc136c1e07507f4a98/password, num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=2,
Fields=8ad8757baa8564dc136c1e07507f4a98/password/8ad8757baa8564dc136c1e07507f4a98,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=8ad8757baa8564dc136c1e07507f4a98
2005.01.24-21.43:02***DB_ADO.query***3.0: i=3, Fields=Jørgen
Østergaard/realname, num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=3, Fields=Jørgen
Østergaard/realname/Jørgen Østergaard, num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=Jørgen Østergaard
2005.01.24-21.43:02***DB_ADO.query***3.0: i=4,
[EMAIL PROTECTED]/email, num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=4,
[EMAIL PROTECTED]/email/[EMAIL PROTECTED],
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->[EMAIL PROTECTED]
2005.01.24-21.43:02***DB_ADO.query***3.0: i=5, Fields=-/phone,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=5, Fields=-/phone/-,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=-
2005.01.24-21.43:02***DB_ADO.query***3.0: i=6, Fields=-/fax,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=6, Fields=-/fax/-,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=-
2005.01.24-21.43:02***DB_ADO.query***3.0: i=7, Fields=DEA/companycode,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=7, Fields=DEA/companycode/DEA,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=DEA
2005.01.24-21.43:02***DB_ADO.query***3.0: i=8, Fields=ADMIN/role,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=8, Fields=ADMIN/role/ADMIN,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=ADMIN
2005.01.24-21.43:02***DB_ADO.query***3.0: i=9, Fields=EN/languagecode,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.1: i=9, Fields=EN/languagecode/EN,
num_columns=10
2005.01.24-21.43:02***DB_ADO.query***3.2:
this->DBResultSet[rowcount][name]=EN


Actual result:
--------------
>From the log:
2005.01.24-21.41:15***DB_ADO.query***1: select statement
2005.01.24-21.41:15***DB_ADO.query***2: num_columns=10
2005.01.24-21.41:15***DB_ADO.query***3.0: i=0, Fields=4/id,
num_columns=10


-- 
Edit bug report at http://bugs.php.net/?id=31681&edit=1
-- 
Try a CVS snapshot (php4):   http://bugs.php.net/fix.php?id=31681&r=trysnapshot4
Try a CVS snapshot (php5.0): 
http://bugs.php.net/fix.php?id=31681&r=trysnapshot50
Try a CVS snapshot (php5.1): 
http://bugs.php.net/fix.php?id=31681&r=trysnapshot51
Fixed in CVS:                http://bugs.php.net/fix.php?id=31681&r=fixedcvs
Fixed in release:            http://bugs.php.net/fix.php?id=31681&r=alreadyfixed
Need backtrace:              http://bugs.php.net/fix.php?id=31681&r=needtrace
Need Reproduce Script:       http://bugs.php.net/fix.php?id=31681&r=needscript
Try newer version:           http://bugs.php.net/fix.php?id=31681&r=oldversion
Not developer issue:         http://bugs.php.net/fix.php?id=31681&r=support
Expected behavior:           http://bugs.php.net/fix.php?id=31681&r=notwrong
Not enough info:             
http://bugs.php.net/fix.php?id=31681&r=notenoughinfo
Submitted twice:             
http://bugs.php.net/fix.php?id=31681&r=submittedtwice
register_globals:            http://bugs.php.net/fix.php?id=31681&r=globals
PHP 3 support discontinued:  http://bugs.php.net/fix.php?id=31681&r=php3
Daylight Savings:            http://bugs.php.net/fix.php?id=31681&r=dst
IIS Stability:               http://bugs.php.net/fix.php?id=31681&r=isapi
Install GNU Sed:             http://bugs.php.net/fix.php?id=31681&r=gnused
Floating point limitations:  http://bugs.php.net/fix.php?id=31681&r=float
No Zend Extensions:          http://bugs.php.net/fix.php?id=31681&r=nozend
MySQL Configuration Error:   http://bugs.php.net/fix.php?id=31681&r=mysqlcfg

Reply via email to