Ok ladies and gentlemen, I have been engaged by my former emplyer to write a web-based piece of software for them that will store a catalogue of the various peices of Audio Visual equipment they have, allow the general user to book it out for specific 47 minute time blocks (BTW: this is a high school, so that's one period). They'll just select their name form a drop down list and thne it writes the booking to a database table for their chosen day.
This high school works on a 10-day calender. Days one to five are monday to friday (week one), then there's the weekend then days 6-10 monday ot friday, weekend, repeat. The program would need to look at the day selected, figure out which date the next occorance of that day falls on and write the correct date in the entry...but here's where I hit a problem. I need it to be able to write a booking for a specific piece of equipment at a specific time on a specific day only once. Anyone who tries to write to that time will be given an error message telling them that that time slot is already taken.
The program will also at the same time need to display a time-table of the selected day, with all of the various pieces of equipment listed down the side and the periods accross the top (there's six of them in a day BTW) and then the bookings in the table proper. Each of the pieces of equipment down the side will be a hyperlink that leads to a page with a description and usage instructions on each piece of equipment. This is basically all the general user will be able to do.
High level users will have their own page (where they have to provide a user-name and password) where they can cancel bookings (there'll be a link to the adding pages) and loan equipment (they'll scan in a barcode and it will perform the appropriate action) and that's all they can do...add, cancel and loan.
Then there's the admins. They too have a seperate page where they have ot log in, then they can add bookings, cancel bookings, overwrite bookings, add new equipment, remove equipment, etc.
There's quite a bit too it...it's going to evolve quite a bit...
Biggest problem...they want a preliminary version by this friday-next wednesday...somewhere in that time slot.
So...what do you think. Anything here not achieveable in PHP?
BTW: this has been crossposted over at the GN
[This message has been edited by Skaarjj (edited 04-01-2003).]