Once you have considerable data in a database, it is nice to get
summaries, this can usually be done with suitable joins, aggregate
functions (count, min, max, sum, and avg -- the last 2 for numeric
types), and GROUP BY.
The "timetable" database (will) have information on courses,
students, and who is enrolled (a many-many relationship.) The schema is:
The standards for HTML and CSS are published by the World Wide Web
Consortium, w3. Your pages may be displayed as you wish by a browser,
but do they conform to the standard? If they do, there is a better
chance that they will appear correctly in all browsers.
(Unfortunately, one of the most widely used browsers does not
always comply with the standards, even though everybody benefits by the
existence of a standard.)
There are on-line validation services for both html and css at
www.w3.org. For html, you need to specify DOCTYPE, since
text/html can be either HTML (version 4.01 is a standard) or XHTML.
Pick a page with both HTML and CSS in it, and put at the top
either: (the second is for HTML 5)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!DOCTYPE HTML>
Then go to each verifier page, and put in the URL of your page on
Osiris.
You will probably find some errors, and perhaps many warnings. Try
to understand them, and correct what you can. If you get a successful
validation, you get a "sticker", a validator image that you can put on
your page if you want to. (As HTML 5 is "experimental" no sticker.)
In any case, tell me the page you attempted to validate, in the form
below.
By now, you should all be working on your own unique projects, so I
can't say, in general, "Do loop-de-do this week." So, using the
philosophy of "incremental development," decide what the next thing you
can do that will make your site more useful, and next week, the thing
after that... Hopefully you have some goal in mind.
If not, give serious thought to
what you can do that will be useful or at least interesting to
yourself, for the rest of the term.
Do this one thing, and tell me about it, using the form ABOVE.
Example: To realistically allow a logged in customer to order a music CD, You would need a page that lists all or part of the available ones, and also has access to the identity of the customer. This might entail changes to your database, or setting a cookie, or creating a form to search the product table.
Think about how users can find their way among your numerous pages.
If someone takes the trouble to register, will they then be able easily
to sign in next time? Is their password secure? What if they forget?
Once signed in, can you tell, at the various other pages, that this is
so? (I wouldn't want to have to give my password for each new page, for
example.)
Test your forms with missing or bad data, as well as good. design
your forms and instructions so this is less likely, bu expect the worst.
Your users may generate a variety of errors, such as input too long,
or wrong type. Handle these gracefully. Set maxlength in form, check
for blank fields, note where integer is expected, for example.
It is not required to show Database Error messages, nor do you always
want to "die" on them. For instance, if a missing entry would cause a
violation of not null constraint, or an entry would violate uniqueness,
the database's refusal to insert row is probably the correct
action, so you should continue to process the page. At most you would
want to say "information not updated."
Error messages are wanted by you during development, you don't
really want to show them to the public, for two reasons: They undermine
confidence in your site, and hackers can use the information in them,
such as table name, to attack your database