By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,473 Members | 3,292 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,473 IT Pros & Developers. It's quick & easy.

Populate Pull down menu from access database on selection of previous pull down menu

P: 46
Hello Experts.
Could you find a solution for this problem please!

I have the following tables in Access Database

Table Name: origin
Fields Names: country, countrycode

Table Name: make
Fields Names: countrycode, make


Table Name: toyota
Fields Name: model

Table Name: nissan
Fields Name: model

Table Name: mazda
Fields Name: model


I want to design a form in ASP where users can choose the specification of his car from a series of pull down menus.


There are 4 Pull down menus/Combo boxes as follows:

Combo box 1: Origin [populates data from table origin]

Combo box 2: Make [populates data from table make]
Initially disabled. Once an element is selected in combo box 1, combo box 2 is enabled and is populated with data corresponding to that item from table make.

Combo box 3: Model [populate data from a table chosen from the list specified in combo box 2]
Initially disabled. Once an element is selected in combo box 2, combo box 3 is enabled and is populated with data corresponding to that item. For example, if a user select Toyota in combo box 2, then combo box 3 is automatically populated with data from table Toyota that is, Corolla, Vitz, Allion, Corona etc..


Combo box 4: Capacity [populate data from a table chosen from the list specified in combo box 3]
Initially disabled. Once an element is selected in combo box 3, combo box 4 is enabled and is populated with data corresponding to that item.


I have given it a try
Here are my codes

Expand|Select|Wrap|Line Numbers
  1.  
  2. <%@ Language = VBscript %>
  3. <% Option Explicit %>
  4. <% Response.Buffer = True %>
  5.  
  6. <html>
  7. <head>
  8. <title>Search Your Car</title>
  9. <SCRIPT language=JavaScript>
  10. function reload(form){
  11. var strval=form.make.options[form.make.options.selectedIndex].value;
  12. self.location='car.asp?make=' +str val ;
  13. }
  14. </script>
  15.  
  16. <SCRIPT language=JavaScript>
  17. function reload(form1){
  18. var strval1=form1.make.options[form1.make.options.selectedIndex].value;
  19. self.location='car.asp?make=' + strval1 ;
  20. }
  21. </script>
  22.  
  23. </head><body>
  24.  
  25. <%
  26. Dim objconn,objRS,strSQL,make
  27. make=Request.QueryString("make")
  28. Set objconn = Server.CreateObject("ADODB.Connection")
  29. objconn.ConnectionString = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("yeshti.mdb")
  30. objconn.Open
  31.  
  32. Set objRs = Server.CreateObject("ADODB.Recordset")
  33.  
  34. ‘The First drop down Menu/Combo Box'
  35.  
  36. strSQL = "SELECT * from origin"
  37. objRS.Open strSQL, objconn
  38. Response.Write "<form method=post name=f1 action=''><select name=country onchange='reload(this.form)'><option value=''>Select origin</option>"
  39. Do While Not objRS.EOF 
  40.     Response.Write "<option value=" & objRs("country") & ">" & objRs("country") & "</option>"
  41.      objRS.MoveNext
  42.  Loop
  43. objRs.Close
  44. Response.Write "</select>"
  45. Response.Write "<br>----<br>"
  46.  
  47.  
  48. ‘ Second drop down menu
  49.  
  50. If len(country) > 1 Then
  51.  
  52. strSQL = "SELECT  * FROM make where countrycode='" & countrycode &"'"
  53. objRS.Open strSQL, objconn
  54. Response.Write "<select name=make onchange='reload(this.form1)'><option value=''>Select origin</option>"
  55. Do While Not objRS.EOF 
  56.     Response.Write  objRs("make") & "<br>"
  57.      objRS.MoveNext
  58.  Loop
  59. Response.Write "</Select>"
  60. objRs.Close
  61.  
  62. objconn.Close
  63. end if 
  64.  
  65.      %>
  66. </body>
  67. </html>
  68.  
  69.  
Sir, I am stuck. I do not know how to proceed. I really need your help!
May 14 '08 #1
Share this Question
Share on Google+
5 Replies


omerbutt
100+
P: 638
hi giandeo,
first of all have you any experience regarding AJAX.if yes then i can give you a more managed way to do it and more efficient too,apart from if you know javascript , its same like it
regards,
omer
May 14 '08 #2

P: 46
hi giandeo,
first of all have you any experience regarding AJAX.if yes then i can give you a more managed way to do it and more efficient too,apart from if you know javascript , its same like it
regards,
omer
No sir, I do not know AJAX, I am new to programming. I am learning ASP and Javascript.
May 14 '08 #3

omerbutt
100+
P: 638
No sir, I do not know AJAX, I am new to programming. I am learning ASP and Javascript.
its a good practice to start your javascript in ajax its same as javascript here
http://www.w3schools.com/ajax/ajax_intro.asp just have an over view it would open a new era of solutions to your problems,come back when you have gone through these pages then i tell you how to make that work with your code and you will be amazed to see such efficient and accurate results, don worry thats for just to have an idea that what AJAX is actually :)
regards,
omer
May 14 '08 #4

P: 46
its a good practice to start your javascript in ajax its same as javascript here
http://www.w3schools.com/ajax/ajax_intro.asp just have an over view it would open a new era of solutions to your problems,come back when you have gone through these pages then i tell you how to make that work with your code and you will be amazed to see such efficient and accurate results, don worry thats for just to have an idea that what AJAX is actually :)
regards,
omer
Thank you so much for your suggestions Sir. I am going to have a look about how AJAX works and will soon report to you.
May 15 '08 #5

omerbutt
100+
P: 638
Thank you so much for your suggestions Sir. I am going to have a look about how AJAX works and will soon report to you.
:) any time giandeo, feel free to ask
regards,
omer.
May 16 '08 #6

Post your reply

Sign in to post your reply or Sign up for a free account.