|
Posted by Richard Davey on 06/06/05 17:11
Hello Merlin,
Monday, June 6, 2005, 2:51:39 PM, you wrote:
M> while ($row = mysql_fetch_object($result)){
M> $cat[$row->main_id][name] = $row->main_name;
M> $cat[$row->main_id][$row->sub_id][name] =
M> $row->sub_name;
M> }
Quote array keys.. ALWAYS quote them:
$cat[$blah]['name'] = $whatever
Otherwise PHP will think [name] is trying to use a constant and
substitute a value accordingly.
M> foreach ($cat AS $maincat){
M> echo $maincat[name].':';
M> foreach($maincat AS $subcat){
M> echo $subcat[name].$br;
M> }
M> echo $br;
M> }
M> As you can see I get the extra letters N and E. Is this an php
M> error or did I do something wrong?
You did something wrong ;) If you don't quote the array keys it'll
assume a constant, which in turn would assume a 1 which will give you
the first character of the string.
Best regards,
Richard Davey
--
http://www.launchcode.co.uk - PHP Development Services
"I do not fear computers. I fear the lack of them." - Isaac Asimov
Navigation:
[Reply to this message]
|