As part of our support for some of our system-wide Arts programs, a few months back I agreed to build a web site and some online registration tools for the March 2004 American College Dance Festival (Southwest Regional) being hosted by our Scottsdale Community College. There are some 350 attendees from 31 different college dance programs.

This was a fun design project as I got to go full bore into using pure XHTML design, two sets of style sheets to mask out those pesky NetScape 4 users/abusees (plus a print style sheet), a one template PHP output template, random background images, use of fancy CSS for a navigation bar that looks like the kludgy JavaScript image swaps, but renders iin source as a good old, accessible friendly, <ul> list….

They did not give enough lead time to set up totally online registration, but we did take some weakly formatted materials, and have the attendees use MS Word protected “Form” documents to submit their registration details.

But the fun came this past 2 weeks in setting up a completely online system for the college representatives to sign their students up for the classes that are offered over 4 days. The first part was getting the class details (name, location, instructor, maximum registration). I had made an Excel spreadsheet with different sheets to match the database tables (especially as the class titles continue to change, student names were dropped, added) so that the conference folks could send me data, I could then import into the mySQL database. The fist tool was generating a schedule preview, with link to the instructor bios (also drawn from the database).

This was a messy pile of data to sort out- nearly 150 different classes, with different maximum numbers (room dependent), participants could select 1,2,3 class preferences for 14 time slots, and having to work around conflicting events such as rehearsals and adjudication (I have no idea what that is, but I had to type it a lot ;-). Oh, and there are these “Master Classes” where each college was allotted so many registration slots, AND, a person could take only one Master Class.

I was told that in years past, attendees had to stand in line at the conference registration to get their class requests, so if this work, it would take away that hassle, and provide the event planners more room to plan for the conference details.

The system has been open just a few days, and it appears that 26/31 colleges have already gotten their participants . registrations in. It is competitive as classes fill, so they were eager to log in and sign up. I cannot let you see, but have collected some screen shots.

This is the login page for one identified person from each college responsible for entering information. I made a simple PHP script to email them instructions, their username, and password (the form has a check box to sue to create an email notification for a lost password):

mcli web site (mac browser)

The main screen (and all others) allows them to do the primary tasks- enroll students/faculty from their college in classes, and set up their college registration in the Master Classes:

mcli web site (mac browser)

Selecting an individual student form the top menu allows the selection of 1,2,3rd choices for a time slot. I did not have time to block out their other scheduled rehearsal commitments because that schedule was chaotic to say the least. These selections can be changed any time during the open registration.

mcli web site (mac browser)

The “check availabilitty” links on each class line provide a means to see how many people have registered for a class, and a color code for the availability (.e.g red in column 1 if there are already enough #1 preferences to fill; yellow in the first two columns if the sum of #1 and #2 choices is between 50 and 100% of the max)…

mcli web site (mac browser)

Newly added (last night) is a “preview” of the individual’s schedule- only approximate as choices change during the open period (when ti closes, a script will march through the schedule and assign students to the classes):

mcli web site (mac browser)

Then there is setting the college enrollment for the “Master Classes” Very tricky. Not only did it have to check if a college used up its 10 slots, it also had to make sure they did not add more and did not assign one student to more than one class. I had to resort to some JavaScript form checking for this (using PHP to write variables passed to a JS function, whew!):

mcli web site (mac browser)

Then, I made an admin tool so the planners could keep an eye on the registration…. The main admin screen shows the total number of registration events from each college:

mcli web site (mac browser)

There are drop down menus to check the current registration for all classes- this will eventually be printed as a roster:

mcli web site (mac browser)

The last thing to do is to write the script Wednesday that will march through and build final schedules. This looks like a lot, but there is a great deal of code re-use, and banging hard on the mySQL kept the logic clear. I think.

Now this is how you do the database mambo…. you put your left foot in, you put your left foot… (you can see I know squat about dance!)

The post "Doing the Web Database Mambo- Online Registration Site for Dance Festival" was originally cracked open and scrambled from a rotten egg at CogDogBlog ( on March 1, 2004.

1 Comment