How Can I do this?

Posted on 2004-09-29
Last Modified: 2013-12-24
I have a website which is "Professionals Directory". I have separate website for each professional. On the main  "Professionals Directory"website, I like the visitor to be able to choose the right professional by three drop downs. For example the first dropdown will list the tyoe of profession. For example
Second dropdown will ask the visitor to enter his Zipcode, so that it will list the plumber or carpenter in his area of residence.

The third dropdown will be Language. Here the visitor will select the language spoken e.g. English, Chinese, Portugese etc. by the professional, so that a Chinese speaking customer can look for a tradesman who speaks the language.

Question by:msahib
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
  • +2

Accepted Solution

DavidBirch2dotCom earned 25 total points
ID: 12182297
for the basics:

you needs a database with the professionals and info about them, Name, Profession, Language, Address (watch you dont give this out elese the experts might not like u :) )

you would then need to query that database using the selections of the list box's which would be populated from the database - have a look @ ASP to get this done - its probably the best language for this

LVL 33

Expert Comment

ID: 12182933
Right, a database is the best option for storing the directory information.  Then you will use a scripting language like ASP or PHP to establish an interaction between your web pages & forms and the database.  Your choice as to which scripting language should be based on which one you are more familiar with (if any), what languages your hosting company supports (if you already have a website and hosting).  ASP and PHP are very similiar in terms of function, so I don't agree with David that ASP is better.

For a database, you can use MySQL with either language, although it is more commonly associated with PHP.  It's an open source (ie. free) database that works extremely well and is very popular.  There are other choices, though such as PostgreSQL (also open source - it's supposed to be very good, but I've never used it myself), MS SQL, or even Access, although it probably isn't adequate for what you are trying to do.

Whichever scripting language and database you use, the process is very similar.  The user will select a profession, zip code, and language preference and submit the form.  The scripting language will query the database and return any entries that the match the criteria selected by the user.  It can also create a dynamic page based on and listing these results.  Alll you have to do is choose a scripting language and database and then learn how to program the pages you want   :)

Author Comment

ID: 12182945
Dear David:
Thank you so much for your help. I will try!

Have a nice day.

Secure Your WordPress Site: 5 Essential Approaches

WordPress is the web's most popular CMS, but its dominance also makes it a target for attackers. Our eBook will show you how to:

Prevent costly exploits of core and plugin vulnerabilities
Repel automated attacks
Lock down your dashboard, secure your code, and protect your users


Author Comment

ID: 12183057
Dear Hume:

I truly appreciate your detailed response. Could you please suggest to me a website where I can learn more on this, from the basics?

Much obliged.

LVL 33

Assisted Solution

humeniuk earned 25 total points
ID: 12183196
Here are some tutorials that should get you started:

PHP tutorial (you can skip the installation stuff if you're using a hosting company):

ASP Tutorial (again, you may not need the installation info):

Using PHP with MySQL:

There is a lot of great PHP info on the official PHP website (see, including a basic overview at  The MySQL website is and it also includes an introductory tutorial:

Remember that whichever solution you choose, it is going to take some time to learn how to use them properly, but it is well worth the effort.  Also recommended is, which features numerous PHP & ASP (and other) scripts that are available for use, most of them free.  You can often find a script that does what you are looking for or one you can modify for your purposes, saving you a lot of time.

I hope this helps.

Author Comment

ID: 12190194
Much obliged for all this good info.

LVL 33

Expert Comment

ID: 12190311
Glad to help out.

Expert Comment

ID: 12193758 is one of the best for your needs, it offers most solutions for your problems.

Expert Comment

ID: 12336145
Hi, Check if this is what you are looking for? Just cut and paste this into a HTML file and view it in a browser.

<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>

<select name="stage2" size="1" onChange="redirect1(this.options.selectedIndex)">
<option value=" " selected> </option>
<option value=" " selected>---Select2--------------</option>

<select name="stage3" size="1" onChange="redirect2(this.options.selectedIndex)">
<option value=" " selected> </option>
<option value=" " selected>---Select3----------------</option>


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("Web Design","47");
group[1][2]=new Option("JSP","46");
group[1][3]=new Option("EJB","45");

group[2][0]=new Option("Now Select This One"," ");
group[2][1]=new Option("Design","115");
group[2][2]=new Option("Development","116");

var temp=document.isc.stage2

function redirect(x){
for (m=temp.options.length-1;m>0;m--)
for (i=0;i<group[x].length;i++){
temp.options[i]=new Option(group[x][i].text,group[x][i].value)

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 Associate"," ");
secondGroup[1][1][1]=new Option("Uday","");
secondGroup[1][1][2]=new Option("Latha","");
secondGroup[1][1][3]=new Option("Anup","");

secondGroup[1][2][0]=new Option("Now Select Associate"," ");
secondGroup[1][2][1]=new Option("Dinesh","");
secondGroup[1][2][2]=new Option("Mohan","");
secondGroup[1][2][3]=new Option("Krishnakumar","");

secondGroup[1][3][0]=new Option("Now Select Associate"," ");
secondGroup[1][3][1]=new Option("Bibil","");
secondGroup[1][3][2]=new Option("Bobby","");

secondGroup[2][0][0]=new Option("---Select 3---"," ");
secondGroup[2][1][0]=new Option("Now Select Associate"," ");
secondGroup[2][1][1]=new Option("Piby","");
secondGroup[2][1][2]=new Option("Shakthi","");
secondGroup[2][1][3]=new Option("Rakesh","");
secondGroup[2][1][4]=new Option("Bijay","");

secondGroup[2][2][0]=new Option("Now Select Associate"," ");
secondGroup[2][2][1]=new Option("George","");
secondGroup[2][2][2]=new Option("Sethu","");

var temp1=document.isc.stage3
function redirect1(y){
for (m=temp1.options.length-1;m>0;m--)
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)

function redirect2(z){





Expert Comment

ID: 12339540
You can sometimes go to and type "html scripts"  or
"form scripts" if you want to explore those areas of your interest.

Featured Post

Moving data to the cloud? Find out if you’re ready

Before moving to the cloud, it is important to carefully define your db needs, plan for the migration & understand prod. environment. This wp explains how to define what you need from a cloud provider, plan for the migration & what putting a cloud solution into practice entails.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

#Citrix #Citrix Netscaler #HTTP Compression #Load Balance
This program is used to assist in finding and resolving common problems with wireless connections.
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…
Suggested Courses
Course of the Month6 days, 19 hours left to enroll

622 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question