gbose Posted July 20, 2016 Share Posted July 20, 2016 I have three table.Category,sub category and company. I populate two drop down.when select category(1st drop down) it will populate 2nd drop down(sub category) What I want when I will select 2nd drop down(sub category) corresponding company details will come from company table. is it possible in PHP following are the codes for two drop down index.php <?php include("Config.php"); $sql = "SELECT * FROM category ORDER BY CategoryDetails ASC"; $countries = $dbo->query($sql); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Dropdown list example</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> <link rel="stylesheet" href="style.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script> function getStates(CategoryID){ $("#state").show(); $("#stateDropdown").html('<option>Loading...</option>'); $.ajax({ method: "POST", url: "getStates.php", dataType: "html", data: {category: CategoryID} }) .done(function(data){ $("#stateDropdown").html(data); }); } </script> </head> <body> <style>#state { display: none; }</style> <div class="container"> <form class="form-horizontal"> <div class="form-group"> <label for="category" class="col-sm-2 control-label">Category:</label> <div class="col-sm-4"> <select class="form-control" id="category" onChange="getStates(this.value)"> <option value="">Select Category</option> <?php foreach($countries as $category){ echo "<option value='" . $category['CategoryID'] . "'>" . $category['CategoryDetails'] . "</option>"; } ?> </select> </div> </div> <div class="form-group" id="state"> <label for="state" class="col-sm-2 control-label">Sub Category:</label> <div class="col-sm-4"> <select class="form-control" id="stateDropdown"> </select> </div> </div> </form> </div> </body> </html> getstates.php <?php if(!empty($_POST['category'])){ require("Config.php"); $CategoryID = $_POST['category']; $sql = "SELECT * FROM subcategory WHERE CategoryID = :CategoryID ORDER BY SCategoryDetails"; $states = $dbo->prepare($sql); $states->execute(array( ':CategoryID'=> $CategoryID )); echo "<option>Select Subcategory...</option>"; foreach($states as $subcategory){ echo "<option value='" . $subcategory['SCategoryID'] . "'>" . $subcategory['SCategoryDetails'] . "</option>"; } } ?> config.php <?Php /////// Update your database login details here ///// $dbhost_name = "localhost"; // Your host name $database = "leadforce"; // Your database name $username = "gb"; // Your login userid $password = "123"; // Your password //////// End of database details of your server ////// //////// Do not Edit below ///////// try { $dbo = new PDO('mysql:host='.$dbhost_name.';dbname='.$database, $username, $password); } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die(); } ?> and also sample page i enclose, what actually i want if anybody help Thanks Quote Link to comment https://forums.phpfreaks.com/topic/301523-select-php-drop-down-and-company-table-will-show/ Share on other sites More sharing options...
lovephp Posted August 2, 2016 Share Posted August 2, 2016 You are talking about company and the codes are for country state, look for a 3tire dropdown that will solve your issue. Quote Link to comment https://forums.phpfreaks.com/topic/301523-select-php-drop-down-and-company-table-will-show/#findComment-1535465 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.