[PHP-DEV] Bug #10268 Updated: mysql_fetch_array() dropping non-NULL column name From: clewis <email protected>
Date: 06/26/01

ID: 10268
User Update by: clewis <email protected>
Status: Open
Bug Type: MySQL related
Operating system: RedHat 6.1
PHP Version: 4.0.4pl1
Description: mysql_fetch_array() dropping non-NULL column name

Solved. This was happening due to a truly inspired problem with my own code... The element was being unset deep in a separate function. Sorry to bother you!

Previous Comments:
---------------------------------------------------------------------------

[2001-04-10 13:34:47] clewis <email protected>
mysql_fetch_array with MYSQL_BOTH or MYSQL_ASSOC is returning one of the columns in the query ONLY as a numeric index, but not the named index. The column is a NOT NULL column, so the value is always defined.

I have a feeling the problem has something to do with the fact that the "missing" column is the column joining two tables. Here's the SQL:

select distinct p.*,pt.Formula
from Promotions p, PromoTypes pt
where p.PromoTypeID = pt.PromoTypeID

Here's some of the result of mysql_fetch_array:

array(31) {
  [0]=>
  string(2) "10"
  ["PromotionID"]=>
  string(2) "10"
  [1]=>
  string(20) "Free font with order"
  ["Name"]=>
  string(20) "Free font with order"
  
  ...etc...

  [7]=>
  string(2) "10"
  [8]=>
  string(4) "0.01"
  ["X"]=>
  string(4) "0.01"

  ...etc...
}

Array index 7 should be followed by the key "PromoTypeID". The same thing happens using MYSQL_ASSOC (the element is missing altogther), and also if I specify p.PromoTypeID explicitly in the query.

The problem IS SOLVED if I alias the column name to something else using "p.PromoTypeID AS FakeName" , which makes me think even more that it's being confused by the table joining.

---------------------------------------------------------------------------

Full Bug description available at: http://bugs.php.net/?id=10268

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>