Re: mysql_fetch_array() not working as expected
| From: | Marek Kilimajer | Date: | Tue, 07 Oct 2003 19:26:29 +0000 |
| Subject: | Re: mysql_fetch_array() not working as expected | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-165360@lists.php.net to get a copy of this message | ||
Chris W. Parker wrote:
Hey peeps. Let me make this simple. I've got the following sql query in a function: SELECT c.id , cc.id , cc.prod_id , p.name , cc.price , cc.qty FROM cart AS c INNER JOIN cart_contents AS cc ON cc.cart_id = c.id INNER JOIN products AS p ON p.id = cc.prod_id WHERE c.cust_id = '6' ORDER BY cc.id When I get the result and turn it into an array with mysql_fetch_array($var, MYSQL_BOTH) I see the following with print_r(): Array (You can make the query: SELECT c.id , cc.id AS ccid , cc.prod_id , p.name and you will get $row['id'] and $row['ccid'] Marek[0] => Array ( [0] => 2 [id] => 3 [1] => 3 [2] => SDG6004-XX-XXX [prod_id] => SDG6004-XX-XXX [3] => Model 6004 [name] => Model 6004 [4] => 89.00 [price] => 89.00 [5] => 2 [qty] => 2 )) Notice that index 1 does not have a textual companion like the other indexes do. I expected the array to be created like this: Array ([0] => Array ( [0] => 2 [c.id] => 3 [1] => 3 [cc.id] => 3 [2] => SDG6004-XX-XXX [cc.prod_id] => SDG6004-XX-XXX [3] => Model 6004 [p.name] => Model 6004 [4] => 89.00 [cc.price] => 89.00 [5] => 2 [cc.qty] => 2 )) But alas... that's not how it works. Anyway to get what I want? Thanks, Chris. As you can see only column names create indexes, not table_name dot column_name. And thus your second id (cc.id) overwrites the first one (c.id)