A MySQL database that includes a php based registration form, 60 question profile/examination and an autoresponder with the results was created some years ago for us--you are welcome to see it at work at [url removed, login to view]
We are now creating a new site that will require multiple versions of the profile/exam that will allow changes and additions to the questions and the scoring through an interface without having to hire a programmer each time we want to make a change.
While we know the current DB at [url removed, login to view] is Mysql, we have no idea of the quality of the programming or its structure. However, we can provide you with the user info needed to gain ftp access to it.
Whether u want to look at the existing one or not, we would like you to also include in the proposal a separate bid to capture all of the existing data and upload it into the new DB.
The existing profile consists of 60 questions and 4 multiple choice answers per question. The 60 questions are segregated into two sections of 40 questions and 20 questions, with each section having a distinct set of instructions on how to decide which answer to choose
As should be true for the new databases, there are no wrong or right answers for each question??"the answer chosen is correlated to being equal to 1 of 4 distinct values… blue, yellow, aqua or red.
The profile should prevent the user from selecting more than one answer per question.
At the completion of the profile, the database then counts how many answers were red, blue yellow and aqua (adding up to a total of 60 for all choices), and based on which color is chosen most often and second most often, the DB then chooses the appropriate email explaining the results (sent to both the user and to us). In other words, each profile will result in there being both a primary color and a secondary color.
Moving towards the creation of multiple profiles, it is likely that:
1. each test will have a different number of total questions
2. each test could have more or less than 2 sections??"the sections really only exist to provide the taker with specific instructions on how to best choose an answer for each question within the related section
3. the email sent for a “blue results?? taking the profile "A" will be different from the email to be sent to a “blue?? taking profile b, c, d, etc.
Functionality and Features we are Looking to Have available through an easy to learn interface that eliminates the dependence on a database administrator to make changes:
The ability to modify an already created/existing profile/test:
* adding, deleting or editing existing questions and the related answers
* the ability to create/add new questions (and the related answers) displayed on the profile, and the corresponding color value of each answer used to calculate results
* editing the content/text of the email explaining the results
* the ability to add, delete or edit additional follow up emails that are set to auto generate at specific time periods (the timing of which can be altered too).
* * However, if that user does purchase a product or joins the membership site, they will no longer auto generate for that user
* the ability to add code to any of the emails sent to a user --allowing them an option to double opt-in to our eZine
The ability to create brand new and unique profiles/tests:
* it is very likely that each new test/profile will contain questions that will be used by other profiles and will also contain new questions created exclusively for the new test
* and each new profile created would obviously have all of the functionality described above for existing profiles.
Creating the Registration/Intake Form
Please use the same fields that exist in the current reg form at <[url removed, login to view]> and add a text field titled “how did you hear about us??
The only required fields should be First name, zip code, gender, email address and password boxes.
In terms of the registration process, instead of being able to go directly from the registration to taking the profile, we’d like the clicking of the “register button?? to generate an email containing a link to a log in that then forwards to the profile. We want to add this step to prevent taking the profiles we create w/o there being a valid confirmation of the email.
In light of this additional step, it might be a good idea to have an additional box added to the form that requires them to retype their email/confirming their email is correct.
To account for our goal of having multiple profiles, we need a process to ensure that the user is sent to the appropriate profile/test. This would happen based on either the link being specific to one profile or the referring link sends the appropriate designation to the form using something like a “get?? or “post?? script.
Examples of registration process:
1. user is on a web page that is specific to sales people, when they click to register for the profile it would assume they are going to get the “sales?? specific profile/registration link.
2. user is on a web page that is nonspecific??"the user would be choosing the appropriate profile for themselves from a list thru whatever mechanism provides the best functionality in terms of dynamically updating itself when new profiles are added??"for example: the php script dynamically created a drop down box with all available choices (which is dynamic based on adding/deleting profiles in the database) when the hosting server sends the page to the user's browser
3. user is referred to a specific registration page by a multitude of other ways??"exples: search engines, text and banner ads, link in an email
If possible, along with the rest of their personal info that is captured upon registering, can the last url they were at prior to coming to our site, and the url on our site just prior to deciding to register be captured in the database.
**For clarity purposes only** (in other words I am not saying this is the best solution or an accurate way to do this) I would expect the database structure would be something like this:
* table 1 would have all of the user specific info??"like contact info taken at intake,, which profile they took, their profile’s calculated results (not just in total, but the answer for each and every question??"though this could be just as easily stored in a different table) and misc data like which auto responder emails have been sent to this user and the original referring url.
* * Accessing and using this data for marketing purposes is critical for us. As such, the ability to request a report/file using multiple criteria/variables is essential (for example, all “Sales?? profiles completed during a specific date range, or only those profiles during a date range with a primary color being Red, or by a specific user name, include detailed answers by question and in total, or only include cumulative answers totals for each color, etc)
* Table 2 would contain all of the questions available for all of the profiles
* Table 3 would contain the multiple choice answers for each question in table 2 and the color value to be assigned to each answer
* Table 4 would contain the info needed to link tables 2 and 3 to dynamically create each profile/test on the website??"it would know what questions should be included on the sales profile, and which section of the profile/test that each question belongs in
* This table would also contain the information needed to create the corresponding email content
* * This table would also contain the information needed to create the corresponding email content
* Form 1 would allow us to write new questions, assign the 4 answers for that question and assign a color value to each answer
* Form 2 would allow us to make changes to existing questions and answers
* Form 3 would allow us to create a new profile, indicating the profile name, which questions are included in which sections, create instructions for that section, name the url's for the reg form, and create the content for the emails associated with that profile
* Form 4 would allow us to modify the existing content and timeline parameters of the emails related to each profile
* Form 5 would give us access to all of the data, what criteria selection options to use for report generation and what format the report should be generated in (eg: csv)
* Form 6 would allow us to dynamically create correspondence/email that will be sent to users, allowing us to send it to everyone or use multiple selection criteria, like only Reds that have taken the profile in the last 6 months