1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

How to modify this javascript to pull data from mysql database

Discussion in 'PHP' started by LostAngel, Jan 30, 2008.

  1. #1
    Hello, I have this javascript script below that populates drop down boxes with hardcoded values. How can I have it pull these values from a MySQL database? All values are in tblCars, and the fields are Type, Make, Model.

    <FORM name="isc">
    <table border="0" cellspacing="0" cellpadding="0">
      <tr align="center"> 
        <td nowrap height="11"> &nbsp;
    
    <select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
    <option selected>---Select1-------------</option>
    <option>Webmaster Sites</option>
    <option>News Sites</option>
    </select>
    
    <select name="stage2" size="1" onChange="redirect1(this.options.selectedIndex)">
    <option value=" " selected> </option>
    <option value=" " selected>---Select2--------------</option>
    <option value=" " selected>---Select2--------------</option>
    </select>
    
    <select name="stage3" size="1" onChange="redirect2(this.options.selectedIndex)">
    <option value=" " selected> </option>
    <option value=" " selected>---Select3----------------</option>
    <option value=" " selected>---Select3----------------</option>
    </select>
    
    <script>
    <!--
    
    /*
    Triple Combo Script Credit
    By Hamid Cheheltani/ JavaScript Kit (http://www.javascriptkit.com)
    Visit http://javascriptkit.com for this and over 400+ other scripts
    */
    
    var groups=document.isc.example.options.length
    var group=new Array(groups)
    for (i=0; i<groups; i++)
    group[i]=new Array()
    
    group[0][0]=new Option("---Select2---"," ");
    
    group[1][0]=new Option("Now Select This One"," ");
    group[1][1]=new Option("JavaScript","47");
    group[1][2]=new Option("DHTML","46");
    group[1][3]=new Option("CGI","45");
    
    group[2][0]=new Option("Now Select This One"," ");
    group[2][1]=new Option("General News","115");
    group[2][2]=new Option("Technology News","116"); 
    
    var temp=document.isc.stage2
    
    
    function redirect(x){
    for (m=temp.options.length-1;m>0;m--)
    temp.options[m]=null
    for (i=0;i<group[x].length;i++){
    temp.options[i]=new Option(group[x][i].text,group[x][i].value)
    }
    temp.options[0].selected=true
    redirect1(0)
    }
    
    
    
    var secondGroups=document.isc.stage2.options.length
    var secondGroup=new Array(groups)
    for (i=0; i<groups; i++)  {
    secondGroup[i]=new Array(group[i].length)
    for (j=0; j<group[i].length; j++)  {
    secondGroup[i][j]=new Array()  }}
    
    secondGroup[0][0][0]=new Option("---Select 3---"," ");
    secondGroup[1][0][0]=new Option("---Select 3---"," ");
    secondGroup[1][1][0]=new Option("Now Select This One"," ");
    secondGroup[1][1][1]=new Option("JavaScript Kit","http://javascriptkit.com");
    secondGroup[1][1][2]=new Option("JavaScript for the non programmer","http://webteacher.com/javascript/");
    secondGroup[1][1][3]=new Option("Java-Scripts.net","http://java-scripts.net");
    
    secondGroup[1][2][0]=new Option("Now Select This One"," ");
    secondGroup[1][2][1]=new Option("Dynamic Drive","http://www.dynamicdrive.com");
    secondGroup[1][2][2]=new Option("Beginner\'s Guide to DHTML","http://www.geocities.com/ResearchTriangle/Facility/4490/");
    secondGroup[1][2][3]=new Option("Web Coder","http://webcoder.com/");
    
    secondGroup[1][3][0]=new Option("Now Select This One"," ");
    secondGroup[1][3][1]=new Option("CGI Resources","http://www.cgi-resources.com");
    secondGroup[1][3][2]=new Option("Ada\'s Intro to CGI","http://adashimar.hypermart.net/");
    
    secondGroup[2][0][0]=new Option("---Select 3---"," ");
    secondGroup[2][1][0]=new Option("Now Select This One"," ");
    secondGroup[2][1][1]=new Option("CNN","http://www.cnn.com");
    secondGroup[2][1][2]=new Option("MSNBC","http://www.msnbc.com");
    secondGroup[2][1][3]=new Option("ABC News","http://www.abcnews.com");
    
    secondGroup[2][2][0]=new Option("Now Select A Page"," ");
    secondGroup[2][2][1]=new Option("News.com","http://www.news.com");
    secondGroup[2][2][2]=new Option("Wired","http://www.wired.com");
    
    var temp1=document.isc.stage3
    function redirect1(y){
    for (m=temp1.options.length-1;m>0;m--)
    temp1.options[m]=null
    for (i=0;i<secondGroup[document.isc.example.options.selectedIndex][y].length;i++){
    temp1.options[i]=new Option(secondGroup[document.isc.example.options.selectedIndex][y][i].text,secondGroup[document.isc.example.options.selectedIndex][y][i].value)
    }
    temp1.options[0].selected=true
    }
    
    function redirect2(z){
    window.location=temp1[z].value
    }
    
    //-->
    </script>
    
    		</td>
      </tr>
    </table>
    </FORM>
    
    <p><font face="arial" size="-2">This free script provided by</font><br>
    <font face="arial, helvetica" size="-2"><a href="http://javascriptkit.com">JavaScript
    Kit</a></font></p>
    Code (markup):
    Pretty much I have in my table the following:

    Type | Make | Model
    Car | Chevrolet | Corvette
    Car | Ford | Mustang
    Truck | Nissan | Titan
    Motorcycle | Kawasaki | Ninja

    When I select 'car' from the first drop down, I want it to populate the 2nd drop down with makes...and when I select a make it populates the 3rd dropdown with the models for that make.
     
    LostAngel, Jan 30, 2008 IP
  2. fairuz.ismail

    fairuz.ismail Peon

    Messages:
    232
    Likes Received:
    10
    Best Answers:
    0
    Trophy Points:
    0
    #2
    you can use ajax for this..try to learn some ajax basics on this..goodluck
     
    fairuz.ismail, Jan 30, 2008 IP
  3. ro_praetor

    ro_praetor Peon

    Messages:
    7
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    You can't access Mysql from javascript. At best you can use javascript to call a php script on the server that executes the query and returns the results.
     
    ro_praetor, Jan 30, 2008 IP
  4. rspenc29

    rspenc29 Peon

    Messages:
    256
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #4
    Use xmlhttp if you want to pull the data from a database.

    If you don't need a database then you can store the values in javascript arrays so you won't need xmlhttp.

    Or you can pull all the values from the database server side and then output them into javascript arrays.
     
    rspenc29, Jan 30, 2008 IP
  5. LostAngel

    LostAngel Peon

    Messages:
    2
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #5
    I know I cannot directly connect to mysql from javascript, which is why i'm posting in the php section. I am able to have it populate the first drop down box...it's just having it populate the 2nd once I chose the 1st.
     
    LostAngel, Jan 31, 2008 IP