On Tuesday, December 4, 2001, at 09:16  AM, Brian V Bonini wrote:

> I still can't get this to do what I want:
> $bikes = array(
>      "Road"  => array(
>           "Trek"  => array(
>                     "Trek 5200" => "road.php?brand=t5200"
>                     ),
>           "LeMond" => array(
>                     "Zurich" => "road.php?brand=zurich",
>                     "Chambery" => "road.php?brand=chambery",
>                     "Alpe d'Huez" => "road.php?brand=alpe",
>                     "BuenosAries" => "road.php?brand=bueno",
>                     "Tourmalet" => "road.php?brand=tourmalet"
>                     ),
>           "Moots" => array(
>                     "VaMoots"  => "road.php?brand=vamoots"
>                     )
>      ),
> );
> if ($cat == 'bikes') {
>     while (list($key, $val)=each($bikes[$sub_cat])) {
>           echo "<TD><IMG SRC=\"images/spacer.gif\" WIDTH=\"25\" 
> HEIGHT=\"1\"
> ALT=\"\" BORDER=\"0\"></TD>\n";
>           echo "<TD><A HREF=\"$val\" CLASS=\"menu\">$key</A></TD>\n";

(isn't $val here an array of bike models? If so you'll end up with <A 
HREF="[Array]" ...>)

>         while (list($sub_key, $sub_val) = each($val)) {
>             echo "<TD><A HREF=\"$sub_val\"
> CLASS=\"menu\">$sub_key</a></td>\n";
>         }
>     }
> }
>
Are you looking for something more like this:

$modelString = "";
$makeString = "";
foreach($bikes['Road'] as $make => $models) {
        $makeString .= " " . $make;
        foreach($models as $model => $link) {
                $modelString .= "<A HREF=\"$link\" CLASS=\"menu\">$model</A>";
        }
}
print($makeString . "<br>\n");
print($modelString . "<br>\n");

(I don't get what you're trying to do with the table, though)

-Steve


> Will produce:
> Trek Trek 5200  LeMond Zurich Chambery Alpe d'Huez BuenosAries Tourmalet
> Moots VaMoots
> as it should...
>
> But, I need it to produce:
> Trek LeMond Moots
> Trek 5200  Zurich Chambery Alpe d'Huez BuenosAries Tourmalet VaMoots
>
> And I need to get the value of $sub_val in the nested "while" loop to 
> where
> $val is in the outer loop.
>
> I'm really stuck, any suggestions??
>
> -Brian
> **************
>
>
>> -----Original Message-----
>> From: Jim Musil [mailto:[EMAIL PROTECTED]]
>> Sent: Friday, November 30, 2001 5:26 PM
>> To: [EMAIL PROTECTED]
>> Cc: [EMAIL PROTECTED]
>> Subject: RE: [PHP] Stuck on array, need a little help.
>>
>>
>>
>>
>> The script is still working right, you just need to nest another
>> while loop into your current while loop.
>>
>> Like so ...
>>
>> if ($cat == 'bikes' && $sub_cat != 'Road') {
>>       while (list($val, $key)=each($bikes[$sub_cat])) {
>>
>>      echo "<tr><td>$val</td>";
>>
>>      while (list($sub_val, $sub_key) = each($key)) {
>>
>>
>>           echo "<TD><IMG SRC=\"images/spacer.gif\" WIDTH=\"25\"
>>   HEIGHT=\"1\"
>>   ALT=\"\" BORDER=\"0\"></td>\n";
>>           echo "<TD><A HREF=\"$sub_key\"
>> CLASS=\"menu\">$sub_val</a></td>\n";
>>
>>
>> }
>> }
>> }
>>
>> alternatively, if you know specifically what you want you could
>> do this ...
>>
>> if ($cat == 'bikes' && $sub_cat != 'Road') {
>>       while (list($val, $key)=each($bikes[$sub_cat]["Trek"])) {
>>
>>
>>
>>           echo "<TD><IMG SRC=\"images/spacer.gif\" WIDTH=\"25\"
>>   HEIGHT=\"1\"
>>   ALT=\"\" BORDER=\"0\"></td>\n";
>>           echo "<TD><A HREF=\"$key\" CLASS=\"menu\">$val</a></td>\n";
>>
>>
>>
>> }
>> }
>>
>>
>>
>>> No, all that will do is reverse the placement
>>> of the values. So now it prints out Array
>>> and puts the item in the URL. Still the same problem.
>>>
>>>
>>>>  -----Original Message-----
>>>>  From: Jim Musil [mailto:[EMAIL PROTECTED]]
>>>>  Sent: Friday, November 30, 2001 4:54 PM
>>>>  To: [EMAIL PROTECTED]
>>>>  Cc: [EMAIL PROTECTED]
>>>>  Subject: Re: [PHP] Stuck on array, need a little help.
>>>>
>>>>
>>>>  Your script is working like you are asking it to ...
>>>>
>>>>
>>>>  Change ...
>>>>
>>>>       while (list($val, $key)=each($bikes[$sub_cat])) {
>>>>
>>>>  To ...
>>>>
>>>>       while (list($key, $val)=each($bikes[$sub_cat])) {
>>>>
>>>>  and it should work like you WANT it to ...
>>>>
>>>>> I'm stuck. $key returns "Array" how can I get at each
>>>>> level of this array?
>>>>>
>>>>> if ($cat == 'bikes' && $sub_cat != 'Road') {
>>>>>     while (list($val, $key)=each($bikes[$sub_cat])) {
>>>>>         echo "<TD><IMG SRC=\"images/spacer.gif\" WIDTH=\"25\"
>>>>  HEIGHT=\"1\"
>>>>> ALT=\"\" BORDER=\"0\"></TD>\n";
>>>>>         echo "<TD><A HREF=\"$key\" CLASS=\"menu\">$val</A></TD>\n";
>>>>>
>>>>> $bikes = array(
>>>>>      "Road"  => array(
>>>>>           "Trek"  => array(
>>>>>                     "Trek 5200" => "road.php?brand=t5200"
>>>>>                     ),
>>>>>           "LeMond" => array(
>>>>>                     "Zurich" => "road.php?brand=zurich",
>>>>>                     "Chambery" => "road.php?brand=chambery",
>>>>>                     "Alpe d'Huez" => "road.php?brand=alpe",
>>>>>                     "BuenosAries" => "road.php?brand=bueno",
>>>>>                     "Tourmalet" => "road.php?brand=tourmalet"
>>>>>                     ),
>>>>>           "Moots" => array(
>>>>>                     "VaMoots"  => "road.php?brand=vamoots"
>>>>>                     )
>>>>>      ),
>>>>>      "Mountain"  => array(
>>>>>           "Trek"  => array(
>>>>>                     "Fuel 100" => "mountain.php?brand=tfuel90",
>>>>>                     "Fuel 90"  => "mountain.php?brand=schhg"
>>>>>                     ),
>>>>>           "Klein" => array(
>>>>>                     "bike 1" => "URL",
>>>>>                     "bike 2" => "URL"
>>>>>                     ),
>>>>>           "Gary Fisher" => array(
>>>>>                     "bike 1" => "URL",
>>>>>                     "bike 2" => "URL"
>>>>>                     ),
>>>>>           "Moots" => array(
>>>>>                     "bike 1" => "URL",
>>>>>                     "bike 2" => "URL"
>>>>>                     )
>>>>>      ),
>>>>>
>>>>>
>>>>> --
>>>>> PHP General Mailing List (http://www.php.net/)
>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>> To contact the list administrators, e-mail:
>> [EMAIL PROTECTED]
>>>>
>>>>
>>>>  --
>>>>  Jim Musil
>>>>  ---------
>>>>  Multimedia Programmer
>>>>  Nettmedia
>>>>  -------------
>>>>  212-629-0004
>>>>  [EMAIL PROTECTED]
>>>>
>>>>  --
>>>>  PHP General Mailing List (http://www.php.net/)
>>>>  To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>  For additional commands, e-mail: [EMAIL PROTECTED]
>>>>  To contact the list administrators, e-mail:
>> [EMAIL PROTECTED]
>>>>
>>>
>>> --
>>> PHP General Mailing List (http://www.php.net/)
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>> To contact the list administrators, e-mail: php-list-
>>> [EMAIL PROTECTED]
>>
>>
>> --
>> Jim Musil
>> ---------
>> Multimedia Programmer
>> Nettmedia
>> -------------
>> 212-629-0004
>> [EMAIL PROTECTED]
>>
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]
>


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to