wkilc Posted August 14, 2010 Share Posted August 14, 2010 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 More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.