RE: [PHP] Do two lists in a while statement
| From: | Richard Kurth | Date: | Sat, 21 Apr 2007 20:06:53 +0000 |
| Subject: | RE: [PHP] Do two lists in a while statement | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-253443@lists.php.net to get a copy of this message | ||
On 4/21/07, Richard Kurth <richardkurth@centurytel.net> wrote:
>
> On 4/21/07, Richard Kurth <richardkurth@centurytel.net> wrote:
> > How can I do something like this in the same while statement. This
> > does not work while (list(,$possible) = each($possiblefields)
> > list(,$possibleview) = each($possiblefieldsdiscription)){
> > }
> >
>
> What about using && ?
>
>
> while (list(,$possible) = each($possiblefields) &&
> list(,$possibleview) = each($possiblefieldsdiscription)){
> }
>
>
> Doesn't && mean if both variables are TRUE.
Yes, isn't that what you wanted?
Normaly a while checks also if it was TRUE. now it checks if both are TRUE..
If you only require one of both to be TRUE, use || instead of &&.
I am trying to fill in the drop down box in the script below but it is not
working it is only giving me the $possibleview data but not the
$possible data
$fieldnumber = 0;
while (list(,$field) = each($fields)){
echo " <TR>\n";
echo " <TD><SELECT NAME=fieldorder[]>\n";
reset($possiblefields);
reset($possiblefieldsdiscription);
$anyselected = '';
while (list(,$possible) = each($possiblefields)&&
list(,$possibleview) = each($possiblefieldsdiscription)){
$selected = @(($fieldorder[$fieldnumber] == $possible) ?
'SELECTED' : '');
if ($fieldnumber >= count($fieldorder) &&
!$anyselected){
$selected = 'SELECTED';
}
echo "<OPTION value=\"$possible\"
$selected>$possibleview</OPTION>\n";
}
echo " </SELECT></TD>\n";
echo " <TD>$field</TD>\n";
echo " </TR>\n";
$fieldnumber++;
}