lional Posted June 9, 2013 Share Posted June 9, 2013 Hi here is my code for a two tier which I would like to make a three tier chained select <script type="text/javascript"> $(document).ready(function(){ $("select#type").attr("disabled","disabled"); $("select#category").change(function(){ $("select#type").attr("disabled","disabled"); $("select#type").html("<option>wait...</option>"); var id = $("select#category option:selected").attr('value'); $.post("select_type.php", {id:id}, function(data){ $("select#type").removeAttr("disabled"); $("select#type").html(data); }); }); /* $("form#select_form").submit(function(){ var cat = $("select#category option:selected").attr('value'); var type = $("select#type option:selected").attr('value'); if(cat>0 && type>0) { var result = $("select#type option:selected").html(); $("#result").html('your choice: '+result); } else { $("#result").html("you must choose two options!"); } return false; });*/ }); </script> <form id="select_form" name="select_form" action="cat_list.php" method="post"> Choose a category:<br /> <select id="category" name="category"> <?php echo $opt->ShowCategory(); ?> </select> </td><td> choose a type:<br /> <select id="type" name="type"> <option value="0">Choose a Sub-category</option> </select> </td><td> <input type="submit" value="confirm" /> The select_type.php <?php include "includes/select.class.php"; echo $opt->ShowType(); ?> and select.class.php <?php class SelectList { protected $conn; public function __construct() { $this->DbConnect(); } protected function DbConnect() { include "includes/db_config.php"; $this->conn = mysql_connect($host,$user,$password) OR die("Unable to connect to the database"); mysql_select_db($db,$this->conn) OR die("can not select the database $db"); return TRUE; } public function ShowCategory() { $top_level_id = $_GET['catid']; $sql = "SELECT client_subcats.cat_id, categories.cat_id, categories.category FROM client_subcats, categories WHERE client_subcats.cat_id = categories.cat_id AND categories.top_level_id = '$top_level_id' GROUP BY categories.category ORDER BY categories.category"; $res = mysql_query($sql,$this->conn); $category_out = '<option value="0">Choose a Category</option>'; while($row = mysql_fetch_array($res)) { $category_out .= '<option value="' . $row['cat_id'] . '">' . $row['category'] . '</option>'; } return $category_out; } public function ShowType() { $sql = "SELECT client_subcats.subcat_id, subcats.subcat_id, subcats.subcat FROM client_subcats, subcats WHERE client_subcats.subcat_id = subcats.subcat_id AND subcats.cat_id = $_POST[id] GROUP BY subcats.subcat ORDER BY subcats.subcat"; $res = mysql_query($sql,$this->conn); $type = '<option value="0">Choose a Sub-category</option>'; while($row = mysql_fetch_array($res)) { $type .= '<option value="' . $row['subcat_id'] . '">' . $row['subcat'] . '</option>'; } return $type; } } $opt = new SelectList(); ?> This is a two tier and I would like to change it to a three tier. I am very new to AJAX and any help would be appreciated Thanks Lional Link to comment https://forums.phpfreaks.com/topic/278959-alter-a-three-two-tier-cascade-menu-into-a-three-tier/ Share on other sites More sharing options...
trq Posted June 9, 2013 Share Posted June 9, 2013 You forgot to describe your actual issue. Link to comment https://forums.phpfreaks.com/topic/278959-alter-a-three-two-tier-cascade-menu-into-a-three-tier/#findComment-1434979 Share on other sites More sharing options...
lional Posted June 10, 2013 Author Share Posted June 10, 2013 Hi This is for a two tier chained select and I need a three tier. I do not know how to make the changes Link to comment https://forums.phpfreaks.com/topic/278959-alter-a-three-two-tier-cascade-menu-into-a-three-tier/#findComment-1435097 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.