Jump to content

from variables to arrays


wkilc

Recommended Posts

Howdy,

 

I used to have a whole bunch of terms (PreK, Elem, MS, HS etc...) together into a single variable called "levels".  They terms were separated by commas.  The following code created a pulldown menu that allowed me to "filter" the page for any one particular term.  Worked terrific...

 

<?
//remove any old level from query
$tmp = array();
foreach ($_GET as $fld => $val)
    if ($fld != 'levels')
         $tmp[] = $fld . '=' . $val;
$page_name = $_SERVER['SCRIPT_NAME'] . '?' . implode('&',$tmp);
?>
<?php
echo '
<form name="form4" action="" method="get" class="tight">
<select name="levels" >';
?>

<option <?php if(empty($_GET['levels'])){ echo "selected=\"selected\""; } ?> value="<?php echo "$page_name" ?>">DISPLAY ALL LEVELS</option>
<?php
if ($_GET[levels] == 'PreK')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=PreK">PreK</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=PreK">PreK</option>'; }

if ($_GET[levels] == 'Elem')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=Elem">Elem</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=Elem">Elem</option>'; }

if ($_GET[levels] == 'MS')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=MS">MS</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=MS">MS</option>'; }

if ($_GET[levels] == 'HS')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=HS">HS</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=HS">HS</option>'; }

if ($_GET[levels] == 'College')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=College">College</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=College">College</option>'; }

if ($_GET[levels] == 'Prvt')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=Prvt">Prvt</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=Prvt">Prvt</option>'; }

if ($_GET[levels] == 'Admin')
{ echo '<option selected value="'; ?> <?php echo "$page_name" ?>
<?php echo '&start=0&levels=Admin">Admin</option>'; } 
else { echo '<option value="'; ?> <?php echo "$page_name" ?>
<?php echo '&levels=Admin">Admin</option>'; }

echo '
</select>
</form>';
?>

 

Now, I'm keeping all those terms as separate variables, and combining them in an array.  (I think that's right.)

 

$PreK = $PreK;
$Elem = $Elem;
$MS = $MS;
$HS = $HS;
$College = $College;
$Admin = $Admin;
$Prvt = $Prvt;

$levels = array($PreK, $Elem, $MS, $HS, $College, $Admin, $Prvt);
foreach ($levels as $key => $v )    if (!$v)        unset ($levels[$key]);
$levels = implode(', ', $levels);
echo $levels;

 

My question, how do I modify my pulldown form (above) to check the WHOLE array for these values?

 

I'm so lost...

 

Thanks.

 

~Wayne

Link to comment
https://forums.phpfreaks.com/topic/210750-from-variables-to-arrays/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.