Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

पहले ड्रॉपडाउन चयन के आधार पर HTML/PHP ड्रॉपडाउन को पॉप्युलेट करें

आप अनुरोध के साथ एक PHP फ़ाइल बना सकते हैं और इसे AJAX के साथ कॉल कर सकते हैं।

getSubCategory.php

<?php
$category = "";
if(isset($_GET['category'])){
    $category = $_GET['category'];
}

/* Connect to the database, I'm using PDO but you could use mysqli */
$dsn = 'mysql:dbname=my_database;host=127.0.0.1';
$user = 'my_user';
$password = 'my_pass';

try {
    $dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

$sql = 'SELECT sub_category_name as subCategory FROM t_menu_category WHERE category_name = :category';
$stmt = $dbh->prepare($sql);
$stmt->bindValue(':category', $category);
$stmt->execute();

return  json_encode($stmt->fetchAll());

और जब कोई श्रेणी चुनी जाती है तो पकड़ने के लिए कुछ jQuery जोड़ें और संबंधित उप-श्रेणी के लिए सर्वर से पूछें:

<script>
    $(document).ready(function () {
        $('#item_category').on('change', function () {

            //get selected value from category drop down
            var category = $(this).val();

            //select subcategory drop down
            var selectSubCat = $('#item_sub_category');

            if ( category != -1 ) {

                // ask server for sub-categories
                $.getJSON( "getSubCategory.php?category="+category)
                .done(function( result) {    
                    // append each sub-category to second drop down   
                    $.each(result, function(item) {
                        selectSubCat.append($("<option />").val(item.subCategory).text(item.subCategory));
                    });
                    // enable sub-category drop down
                    selectSubCat.prop('disabled', false);                
                });

            } else {                
                // disable sub-category drop down
                selectSubCat.prop('disabled', 'disabled');
            }
        });    

    });
</script>

अपने पहले विकल्प पर भी एक मूल्य जोड़ें:

<option value="-1" selected="selected">-- Select Category --</option>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. sqlachemy में एक होने वाले खंड में एक लेबल का उपयोग करना

  2. MySQL एनम बनाम सेट

  3. mysql के डिफ़ॉल्ट पोर्ट को 3306 से 3360 . में कैसे बदलें

  4. क्या कोई कारण है कि MySQL पूर्ण बाहरी जॉइन का समर्थन नहीं करता है?

  5. फ्रेशर + अनुभवी के लिए सामान्य MySql साक्षात्कार प्रश्न और उत्तर