Ok so it is a bit complicated ... bear with me
In my web application, I have something called "Office" and it has many "Employees". An "Employee" can not exist without an "Office". So in my current employee registration form I prompt the user to fill in some necessary information about his "Office" like [name, address, country, state] and fill in the information about himself [first_name, last_name, email, gender ...etc]. On page submission I create 2 database records one for the "Office" and another for "Employee". Until now everything is running ok. My problem are:
1- When another "Employee" tries to register from a previously registered "Office". He should not have to fill in information for an office that is already registered.
2- There could be some spelling problems for example "Office" name could be "Yahoo" while another person fill it as "Yahoo!". Which might create 2 records for the same Office.
3- I thought of creating a pulldown menu that lists already created offices so users could have the option to create new one or select previously created one. But that would encourage fraud, where people could easily pretend to be "Google" employees while they are not.
How am I going to make the user register with minimal effort and minimal error.
Answer
For starters I dont get why is it an issue why an issue if someone enters incorrect information about the company they are working for. Lot of people would love to work for Google but how is your user gaining anything by entering an false impression that he works for Google.
Coming to the option of selecting companies, I would recommend using an autocomplete option which pulls in data from a list of companies. If the user entering Yahoo (which is a well known company) the autocomplete will just help him select the name reducing the scope for spelling errors.
However if your application is dependent on the company name to provide a specific feature,then one approach you can use is to ask him to provide his corporate email id in an initial step for verification and then continue on with the registration process
If the user enters a name which does not find even a partial match then store it as a new company.
No comments:
Post a Comment