On 31/10/2007, Steven Macintyre <[EMAIL PROTECTED]> wrote:
> Hiya,
>
> I have the following code ... which only seems to result in one item ...
> which is incorrect ... can anyone spot my problem?
>
> if ($armbase != "") {
> $options = explode(",", $armbase);
> $text .= '<table ><tr>';
> $get_endRow = 0;
> $get_columns = 8;
> $get_hloopRow1 = 0;
>
> do {
> if($get_endRow == 0 && $get_hloopRow1++ != 0) {
> $text .= '<tr>';
> $text .= '<td valign="top" width="60">';
> $text .= "<img
> src='".e_BASE."images/options/armbase/".$value."'>";
> $text .= '</td>';
> $get_endRow++;
> }
> if($get_endRow >= $get_columns) {
> $text .= '</tr>';
> $get_endRow = 0;
> }
> } while(list($key,$value) = each($options));
The first time around the loop, both $key and $value are undefined, as
you're not setting them until the end condition.
But that's not a big deal as nothing gets done first time through the
loop except for $get_hloopRow1 getting incremented.
The next time through the loop, because $get_hloopRow1 is now not
zero, the first conditional gets executed. You add some html and the
first value from the array to $text to the string and incremenent
$get_endRow.
All subsequent times through the loop, nothing gets done because the
$get_endRow == 0 condition fails. $get_endRow never gets incrememented
again.
that help at all?
-robin
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php