• Hello all,

    I am pretty new to plugin programming for WordPress.
    I am looking for help to make a plugin that shows with a short-code on a page
    two Dynamic populating dropdown lists from a MySQL table.

    I have found the following example with html, php and javascript.
    Can anyone help to make this work as an WordPress plugin?

    Thanks for the help.
    Hans.

    main.html
    ——————————————————
    <!doctype html public “-//w3c//dtd html 3.2//en”>
    <html>
    <head>
    <title>(Type a title for your page here)</title>
    <script language=”javascript” src=”list.php”></script>
    </head>

    <FORM name=”drop_list” action=”yourpage.php” method=”POST” >
    <SELECT NAME=”Category” onChange=”SelectSubCat();” >
    <Option value=””>Category</option>
    </SELECT> 
    <SELECT id=”SubCat” NAME=”SubCat”>
    <Option value=””>SubCat</option>
    </SELECT>
    </form>

    </body>
    </html>

    list.php
    ——————————————————-
    <?php
    require “config.php”; // database connection details
    echo “

    function fillCategory(){
    // this function is used to fill the category list on load

    “;

    $q1=mysql_query(“select * from category”);
    echo mysql_error();
    while($nt1=mysql_fetch_array($q1)){
    echo “addOption(document.drop_list.Category, ‘$nt1[cat_id]’, ‘$nt1[category]’);”;
    }// end of while
    ?>
    } // end of JS function

    function SelectSubCat(){
    // ON or after selection of category this function will work

    removeAllOptions(document.drop_list.SubCat);
    addOption(document.drop_list.SubCat, “”, “SubCat”, “”);

    // Collect all element of subcategory for various cat_id

    <?
    // let us collect all cat_id and then collect all subcategory for each cat_id
    $q2=mysql_query(“select distinct(cat_id) from subcategory”);

    while($nt2=mysql_fetch_array($q2)){
    //echo “$nt2[cat_id]”;
    echo “if(document.drop_list.Category.value == ‘$nt2[cat_id]’){“;
    $q3=mysql_query(“select subcategory from subcategory where cat_id=’$nt2[cat_id]'”);
    while($nt3=mysql_fetch_array($q3)){
    echo “addOption(document.drop_list.SubCat,’$nt3[subcategory]’, ‘$nt3[subcategory]’);”;

    } // end of while loop
    echo “}”; // end of JS if condition

    }
    ?>
    } //////////////////

    function removeAllOptions(selectbox)
    {
    var i;
    for(i=selectbox.options.length-1;i>=0;i–)
    {
    //selectbox.options.remove(i);
    selectbox.remove(i);
    }
    }

    function addOption(selectbox, value, text )
    {
    var optn = document.createElement(“OPTION”);
    optn.text = text;
    optn.value = value;

    selectbox.options.add(optn);
    }

    Dump.txt (to create the MySQL tables)
    ——————————————————–
    CREATE TABLE category (
    cat_id int(2) NOT NULL auto_increment,
    category varchar(25) NOT NULL default ”,
    PRIMARY KEY (cat_id)
    ) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;


    — Dumping data for table category

    INSERT INTO category VALUES (1, ‘Fruits’);
    INSERT INTO category VALUES (2, ‘Colors’);
    INSERT INTO category VALUES (3, ‘Games’);
    INSERT INTO category VALUES (4, ‘Vehicles’);

    — ——————————————————–


    — Table structure for table subcategory

    CREATE TABLE subcategory (
    cat_id int(2) NOT NULL default ‘0’,
    subcategory varchar(25) NOT NULL default ”
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;


    — Dumping data for table subcategory

    INSERT INTO subcategory VALUES (1, ‘Mango’);
    INSERT INTO subcategory VALUES (1, ‘Banana’);
    INSERT INTO subcategory VALUES (1, ‘Orange’);
    INSERT INTO subcategory VALUES (1, ‘Apple’);
    INSERT INTO subcategory VALUES (2, ‘Red’);
    INSERT INTO subcategory VALUES (2, ‘Blue’);
    INSERT INTO subcategory VALUES (2, ‘Green’);
    INSERT INTO subcategory VALUES (2, ‘Yellow’);
    INSERT INTO subcategory VALUES (3, ‘Cricket’);
    INSERT INTO subcategory VALUES (3, ‘Football’);
    INSERT INTO subcategory VALUES (3, ‘Baseball’);
    INSERT INTO subcategory VALUES (3, ‘Tennis’);
    INSERT INTO subcategory VALUES (4, ‘Cars’);
    INSERT INTO subcategory VALUES (4, ‘Trucks’);
    INSERT INTO subcategory VALUES (4, ‘Blkes’);
    INSERT INTO subcategory VALUES (4, ‘Train’);

  • The topic ‘Help with dropdown list plugin development’ is closed to new replies.