hane Posted January 30, 2009 Share Posted January 30, 2009 I have two different dynamically populated drop downs from mysql. I would like to know if it is possible to select the different drop downs with an array drop down. Eg. In the array drop down I have options Classifieds and Directory if classifieds is selected i would like to use the classifieds menu if directory is selected i want to use directory menu. Here is my code (sorry i posted the whole menu code but i think that's the only way that you will see what i want) Please just point me in the right direction i'm very new to php <SCRIPT language=JavaScript> function reload(form){ var val=form.cat.options[form.cat.options.selectedIndex].value; self.location='menu_l.php?cat=' + val ; } </script> <?php $data = array( 1=> "Classifieds", 2=> "Directory"); $data = str_replace(" ", " ", $data); echo '<SELECT name=data>'; foreach ($data as $key => $value) { echo '<OPTION value='.$value.'> '.$value.''; } echo '</select>'; if ($data = "1") { $quer2=mysql_query("SELECT DISTINCT c_category_name,c_category_id FROM c_category order by c_category_name"); $cat=$_GET['cat']; if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT c_subcategory_name,c_subcategory_id FROM c_subcategory where c_category_id=$cat order by c_subcategory_name"); } else{$quer=mysql_query("SELECT DISTINCT c_subcategory_name, c_subcategory_id FROM c_subcategory order by c_subcategory_name"); } echo "<form method=post name=f1 action='classified_show.php'>"; echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select Category</option>"; while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['c_category_id']==@$cat){ echo "<option selected value='$noticia2[c_category_id]'>$noticia2[c_category_name]</option>"."<BR>";} else{echo "<option value='$noticia2[c_category_id]'>$noticia2[c_category_name]</option>";} } echo "</select>"; echo "<br /><br />"; echo "<select name='subcat'><option value=''>Select Subcategory</option>"; echo "<option value='1'>All</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[c_subcategory_id]'>$noticia[c_subcategory_name]</option>"; } echo "</select>"; echo "<br /><br />"; $query="SELECT area_name,area_id FROM area order by area_name"; $result = mysql_query ($query); echo "<select name='area' > <option value=''>Select Area</option>"; while($nt=mysql_fetch_array($result)){ echo "<option value=$nt[area_id]>$nt[area_name]</option>"; } echo "</select>"; echo "<br /><br />"; echo "<input type=submit value=Submit>"; echo "</form>"; } else { $quer2=mysql_query("SELECT DISTINCT d_category_name,d_category_id FROM d_category order by d_category_name"); $cat=$_GET['cat']; if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT d_subcategory_name,d_subcategory_id FROM d_subcategory where d_category_id=$cat order by d_subcategory_name"); } else{$quer=mysql_query("SELECT DISTINCT d_subcategory_name,d_subcategory_id FROM d_subcategory order by d_subcategory_name"); } echo "<form method=post name=f1 action='../directory_show.php'>"; echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select one</option>"; while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['d_category_id']==@$cat){echo "<option selected value='$noticia2[d_category_id]'>$noticia2[d_category_name]</option>"."<BR>";} else{echo "<option value='$noticia2[d_category_id]'>$noticia2[d_category_name]</option>";} } echo "</select>"; echo "<br /><br />"; echo "<select name='subcat'><option value=''>Select one</option>"; echo "<option value='1'>All</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[d_subcategory_id]'>$noticia[d_subcategory_name]</option>"; } echo "</select>"; echo "<br /><br />"; $query="SELECT area_name,area_id FROM area order by area_name"; $result = mysql_query ($query); echo "<select name='area' > <option value=''>Select one</option>"; while($nt=mysql_fetch_array($result)){ echo "<option value=$nt[area_id]>$nt[area_name]</option>"; } echo "</select>"; echo "<br /><br />"; echo "<input type=submit value=Submit>"; echo "</form>"; } mysql_close($con); ?> Link to comment https://forums.phpfreaks.com/topic/143172-solved-help-with-drop-down-selection-code/ Share on other sites More sharing options...
mubeena Posted January 31, 2009 Share Posted January 31, 2009 what you need? Can u tell clearly Link to comment https://forums.phpfreaks.com/topic/143172-solved-help-with-drop-down-selection-code/#findComment-751249 Share on other sites More sharing options...
hane Posted January 31, 2009 Author Share Posted January 31, 2009 I want a drop down with Options [1] Classifieds [2] Directory. When [1] is selected the classifieds category drop down , subcategory drop down and area drop down must display. When [2] is selected directory category drop down , subcategory drop down and area drop down must display. I have the dynamic drop downs and they work. Now i just have to link the two dynamic drop downs with the first drop down of classifieds & directory. Hope that helps. Thanks Link to comment https://forums.phpfreaks.com/topic/143172-solved-help-with-drop-down-selection-code/#findComment-751256 Share on other sites More sharing options...
mubeena Posted January 31, 2009 Share Posted January 31, 2009 Use hidden values. 1. First design two combo box 2. If first is selected, call a function on the , combo's onchange event. 3. in that on change event, assign value to a hidden value 4. in the page, assign a variable, to display or hide the second combo. <script> function selectoption(option) { var selectedoption=document.getElementById('option').value; document.getElementById('option_Filter').value=selectedoption; if(document.getElementById('option_Filter').value == 2) { document.getElementById('ViewCategory').style.visibility='visible'; document.getElementById('ViewCategorytd').style.visibility='visible'; } else { document.getElementById('ViewCategory').style.visibility='hidden'; document.getElementById('ViewCategorytd').style.visibility='hidden'; } document.definition.submit(); } </script> <? if($option_Filter == 2) { $vis='visible'; } else { $vis='hidden'; } print "<select name='option' id='option' onChange='selectoption(this.form.option)'>"; print "<select style='$vis' name='ViewCategory' id='ViewCategory' onChange='selectviewcategory(this.form.ViewCategory)'>";// ?> Link to comment https://forums.phpfreaks.com/topic/143172-solved-help-with-drop-down-selection-code/#findComment-751266 Share on other sites More sharing options...
hane Posted January 31, 2009 Author Share Posted January 31, 2009 Hi thanks for that, I've got a code like that but onreload my menus are hidden and I need it to be visible here is the code that I have. <script type="text/javascript"> //select funtion // I had to hide both drop down boxes before I showed the visible one // otherwise it would not erase the previos box thus starting with a clean // page function select() { sel = document.getElementById('data'); if (sel.options[sel.selectedIndex].value == 'classified') { sel1.style.visibility = "hidden"; sel2.style.visibility = "hidden"; sel1.style.visibility = "visible"; } else if (sel.options[sel.selectedIndex].value == 'directory') { sel1.style.visibility = "hidden"; sel2.style.visibility = "hidden"; sel2.style.visibility = "visible"; } else { sel1.style.visibility = "hidden"; sel2.style.visibility = "hidden"; } } </script <table> <tr> <td align="left"> <select name="data" id="data" style="WIDTH: 125px" onChange="select()"> <option value="" selected="">Select</option> <option value="classified">Classified</option> <option value="directory">Directory</option> </select> </td> </tr> </table> <div id="sel1" STYLE="visibility:hidden;"> <!--table> <tr> <td align="left"> <select name="classified" style="WIDTH: 125px"> <option value="" selected=""></option> <OPTION value="dude">dude</option> <OPTION value="dude1">dude1</option> <OPTION value="dude2">dude2</option> <OPTION value="dude3">dude3</option> </select></td></tr></table--> <SCRIPT language=JavaScript> function reload(form){ var val=form.cat.options[form.cat.options.selectedIndex].value; self.location='menu_l.php?cat=' + val ; sel1.style.visibility = "visible"; } </script> <?php $quer2=mysql_query("SELECT DISTINCT c_category_name,c_category_id FROM c_category order by c_category_name"); $cat=$_GET['cat']; if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT c_subcategory_name,c_subcategory_id FROM c_subcategory where c_category_id=$cat order by c_subcategory_name"); } else{$quer=mysql_query("SELECT DISTINCT c_subcategory_name, c_subcategory_id FROM c_subcategory order by c_subcategory_name"); } echo "<form method=post name=f1 action='classified_show.php'>"; echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select Category</option>"; while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['c_category_id']==@$cat){ echo "<option selected value='$noticia2[c_category_id]'>$noticia2[c_category_name]</option>"."<BR>";} else{echo "<option value='$noticia2[c_category_id]'>$noticia2[c_category_name]</option>";} } echo "</select>"; echo "<br /><br />"; echo "<select name='subcat'><option value=''>Select Subcategory</option>"; echo "<option value='1'>All</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[c_subcategory_id]'>$noticia[c_subcategory_name]</option>"; } echo "</select>"; echo "<br /><br />"; $query="SELECT area_name,area_id FROM area order by area_name"; $result = mysql_query ($query); echo "<select name='area' > <option value=''>Select Area</option>"; while($nt=mysql_fetch_array($result)){ echo "<option value=$nt[area_id]>$nt[area_name]</option>"; } echo "</select>"; echo "<br /><br />"; echo "<input type=submit value=Submit>"; echo "</form>"; mysql_close($con); ?> </div> <div id="sel2" STYLE="visibility:hidden;"> <!--table> <tr> <td align="left"> <select name="directory" style="WIDTH: 125px"> <option value="" selected=""></option> <OPTION value="dude">dude</option> <OPTION value="dude1">dude1</option> <OPTION value="dude2">dude2</option> <OPTION value="dude3">dude3</option> </select></td></tr></table></div--> <SCRIPT language=JavaScript> function reload(form){ var val=form.cat.options[form.cat.options.selectedIndex].value; self.location='menu_l.php?cat=' + val ; } </script> <?php $quer2=mysql_query("SELECT DISTINCT d_category_name,d_category_id FROM d_category order by d_category_name"); $cat=$_GET['cat']; if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT d_subcategory_name,d_subcategory_id FROM d_subcategory where d_category_id=$cat order by d_subcategory_name"); } else{$quer=mysql_query("SELECT DISTINCT d_subcategory_name,d_subcategory_id FROM d_subcategory order by d_subcategory_name"); } echo "<form method=post name=f1 action='../directory_show.php'>"; echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select one</option>"; while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['d_category_id']==@$cat){echo "<option selected value='$noticia2[d_category_id]'>$noticia2[d_category_name]</option>"."<BR>";} else{echo "<option value='$noticia2[d_category_id]'>$noticia2[d_category_name]</option>";} } echo "</select>"; echo "<br /><br />"; echo "<select name='subcat'><option value=''>Select one</option>"; echo "<option value='1'>All</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[d_subcategory_id]'>$noticia[d_subcategory_name]</option>"; } echo "</select>"; echo "<br /><br />"; $query="SELECT area_name,area_id FROM area order by area_name"; $result = mysql_query ($query); echo "<select name='area' > <option value=''>Select one</option>"; while($nt=mysql_fetch_array($result)){ echo "<option value=$nt[area_id]>$nt[area_name]</option>"; } echo "</select>"; echo "<br /><br />"; echo "<input type=submit value=Submit>"; echo "</form>"; mysql_close($con); ?> </div> Link to comment https://forums.phpfreaks.com/topic/143172-solved-help-with-drop-down-selection-code/#findComment-751286 Share on other sites More sharing options...
hane Posted January 31, 2009 Author Share Posted January 31, 2009 OK I've got my code working sort of now I just need help with $_GET. How do i keep my first value in the url after the second reload. Here is my code. <SCRIPT language=JavaScript> function reload1(form){ var val1=form.dat.options[form.dat.options.selectedIndex].value; self.location='menu_l.php?dat=' + val1 ; } function reload(form){ var val1=form.dat.options[form.dat.options.selectedIndex].value; var val=form.cat.options[form.cat.options.selectedIndex].value; self.location='menu_l.php?dat=' + val1 + '&cat=' + val ; } </script> <?php echo "<form method=get name=f2 action=''>"; echo "<select name='dat' onchange=\"reload1(this.form)\"><option value='0'>Select</option>"; echo "<option value='1'>Classifieds</option>"; echo "<option value='2'>Directory</option>"; echo "</select>"; echo "<br /><br />"; if ($data == "1") { $data=$_GET['dat']; $quer2=mysql_query("SELECT DISTINCT c_category_name,c_category_id FROM c_category order by c_category_name"); $cat=$_GET['cat']; if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT c_subcategory_name,c_subcategory_id FROM c_subcategory where c_category_id=$cat order by c_subcategory_name"); } else{$quer=mysql_query("SELECT DISTINCT c_subcategory_name, c_subcategory_id FROM c_subcategory order by c_subcategory_name"); } echo "<form method=post name=f1 action='classified_show.php'>"; echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select Category</option>"; while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['c_category_id']==@$cat){ echo "<option selected value='$noticia2[c_category_id]'>$noticia2[c_category_name]</option>"."<BR>";} else{echo "<option value='$noticia2[c_category_id]'>$noticia2[c_category_name]</option>";} } echo "</select>"; echo "<br /><br />"; echo "<select name='subcat'><option value=''>Select Subcategory</option>"; echo "<option value='1'>All</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[c_subcategory_id]'>$noticia[c_subcategory_name]</option>"; } echo "</select>"; echo "<br /><br />"; $query="SELECT area_name,area_id FROM area order by area_name"; $result = mysql_query ($query); echo "<select name='area' > <option value=''>Select Area</option>"; while($nt=mysql_fetch_array($result)){ echo "<option value=$nt[area_id]>$nt[area_name]</option>"; } echo "</select>"; echo "<br /><br />"; echo "<input type=submit value=Submit>"; echo "</form>"; } else { $quer2=mysql_query("SELECT DISTINCT d_category_name,d_category_id FROM d_category order by d_category_name"); $cat=$_GET['cat']; if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT d_subcategory_name,d_subcategory_id FROM d_subcategory where d_category_id=$cat order by d_subcategory_name"); } else{$quer=mysql_query("SELECT DISTINCT d_subcategory_name,d_subcategory_id FROM d_subcategory order by d_subcategory_name"); } echo "<form method=post name=f1 action='../directory_show.php'>"; echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select one</option>"; while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['d_category_id']==@$cat){echo "<option selected value='$noticia2[d_category_id]'>$noticia2[d_category_name]</option>"."<BR>";} else{echo "<option value='$noticia2[d_category_id]'>$noticia2[d_category_name]</option>";} } echo "</select>"; echo "<br /><br />"; echo "<select name='subcat'><option value=''>Select one</option>"; echo "<option value='1'>All</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[d_subcategory_id]'>$noticia[d_subcategory_name]</option>"; } echo "</select>"; echo "<br /><br />"; $query="SELECT area_name,area_id FROM area order by area_name"; $result = mysql_query ($query); echo "<select name='area' > <option value=''>Select one</option>"; while($nt=mysql_fetch_array($result)){ echo "<option value=$nt[area_id]>$nt[area_name]</option>"; } echo "</select>"; echo "<br /><br />"; echo "<input type=submit value=Submit>"; echo "</form>"; } mysql_close($con); ?> Link to comment https://forums.phpfreaks.com/topic/143172-solved-help-with-drop-down-selection-code/#findComment-751553 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.