Fall 2000 lab assignments for 66-272 are detailed below. We have posted most of the assignments in advance, but may not post the associated files until later in the semester. Students need to complete these assignments and turn them in on the appropriate date. These may be done at-home on your own time; being in the lab section is not required to complete these assignments (although it would be useful).

Lab assignments are smaller projects which should take between 1 to 4 hours depending on the assignment (some are longer than others) and the student’s prior experience. These labs are also in many cases partial steps towards completing a project phase assignment. (We did this to help you along the way to completing the project assignment.) Students with questions or in need of help, therefore, should contact TAs or the professor and not their fellow students.


Lab 1: HTML Forms

This week you are going to create a simplified version of a chess student information form that you will eventually use (in a revised manner) in your course project. The form will be used by the administrator to input basic student information (and an adapted version will also be used by students to edit some of that information).

The form should contain the following:

  • Title of the form and simple instructions
  • First Name (text box)
  • Last Name (text box)
  • Phone (text boxes for area code, prefix, and suffix)
  • E-mail address (text box)
  • Grade (pull-down menu for K-12)
  • USCF member (radio buttons for yes/no)
  • USCF ID# (if yes; text box)
  • USCF Expiration Date (if yes; pull-down for month and year)
  • "I like chess because..." (text area box)
  • Activities besides chess... (check boxes for soccer, basketball, swimming, music, and art)

The form should contained within a single HTML file entitled (andrewid)Lab1.html and submitted to the lab hand-in folder on IDS1 by Friday, September 1, 2000 by 5pm.


Lab 2: JavaScript Rollovers

This week you need to create a basic HTML page which contains at least four graphical buttons. For each button create a rollover image that can be substituted when the cursor is over it. It is recommended (but not required) that students use a prototype page from their course project to complete this assignment. All the necessary files should be zipped into an archive entitled (andrewid)Lab2.zip and submitted to the lab hand-in folder on IDS1 by Friday, September 8, 2000 by 5pm.


Lab 3: Form Validation

Students should add JavaScript to the Lab 1 form (or a revised version of it) to ensure that all necessary fields are complete and with proper data. Specifically, the form validation must be sure that:

  • first and last name boxes must be complete and have no numbers/invalid characters
  • phone (if provided) is valid (proper format)
  • e-mail address (if provided) is valid
  • grade level is selected
  • if USCF membership button is yes, then both ID# and expiration date completed and valid

If a form field has invalid/missing data, an alert box should appear on submission asking the user to reenter the data. All the necessary files should be zipped into an archive entitled (andrewid)Lab3.zip and submitted to the lab hand-in folder on IDS1 by Friday, September 15, 2000 by 5pm.


Lab 4: Creating the Heimann Family Card Database

Mrs. Heimann likes to keep track of who she sends Christmas and birthday cards to with a MS Excel spreadsheet. By doing this she hopes to remember who she sent what card to each year. Of course the problem with the spreadsheet is that is it is essentially a flat-file database which has a great deal of redundancy in it. One particular problem is that she sends one Christmas card to each (nuclear) family, but because of the flat-file nature, she enters in the year the card was sent for each member of the family.

This week your job is to take the spreadsheet entitled Card_Tracking.xls (which can retrieved via ftp from the server at ids1.hss.cmu.edu/pub/272/) and turn it into a relational database using MS Access. Create the tables you think would be appropriate and transfer the current data to the appropriate tables and fields. Please note: the database should be in third normal form (3NF); a database not in 3NF will automatically be given a check-minus.

The database should be entitled (andrewid)Lab4.mdb and submitted to the lab hand-in folder on IDS1 by Friday, September 29, 2000 by 5pm.


Lab 5: Adding Queries to the Card Database

This week we will follow up with the Heimann Card Database by having students write a few basic queries and storing them in the database.

Mrs. Heimann knows her current system isn't foolproof and is concerned that there may be some families which didn't get a Christmas card (and the infamous year-end newsletter) last year. Write a SQL query to find out which (if any) families didn't receive a Christmas card last year. Doing this will indicate to her which cards she needs to write a special note in so as to assuage any feelings that may have been hurt (nay, brutally crushed) by last year's neglect.

The second set of queries involves counting the number of each type of card that has been sent by the Heimanns. Mrs. Heimann wants to make sure that we are balancing the types of cards sent so that the family does not have a reputation of sending only one type of card. To that end, create the following two queries:

  • list the number of each type of Christmas card sent to a particular family each year
  • list the distribution of Christmas card types sent each year

The database should be entitled (andrewid)Lab5.mdb and submitted to the lab hand-in folder on IDS1 by Friday, October 13, 2000 by 5pm.


Lab 6: Basic ASP -- Baking Cookies

This week we are going to use ASP to create a cookie and give a personal greeting to a visitor upon their return to our page. This assignment will have two pages for the user to see, but the code should be included in a single ASP file.

To do this, students must create a page which checks to see if the person has visited before by looking for the cookie. If the answer is no, then the page serves up a basic greeting page asking for the user's name. After the user submits the name, the cookie is created (3 day expiration date) and the user is directed to the page he/she wishes to view (your choice, but we recommend a page from your course project to make life easier). If the cookie is detected (on our return visit), the user should go directly to the main page, but a brief message should appear in red at the top of the page welcoming the user by name.

All the necessary files should be placed in your IDS1 home directory. The page which executes this lab should be entitled (andrewid)Lab6.asp. All home directories will be locked out at 5pm on Friday, October 27, 2000. The home directories will locked over the weekend, so any files in there that you want to work on over the weekend should be removed.


Lab 7: Using ASP to Read and Write to Databases

This week we are focusing on reading information from a database and writing that information using ASP. We will take the form in Lab 1 or any other form with a first and last name field and use ASP to write submissions of names to a MS Access database. After the submission has occurred, a new page should appear which writes all the records of the first and last name fields currently in the database.

All the necessary files should be placed in your IDS1 home directory. The page which executes this lab should be entitled (andrewid)Lab7.asp. All home directories will be locked out at 5pm on Friday, November 3, 2000. The home directories will locked over the weekend, so any files in there that you want to work on over the weekend should be removed.


Lab 8: TBA

This lab assignment will be posted later in the semester.


Lab 9: TBA

This lab assignment will be posted later in the semester.

 

Please note: this site contains relevant information for the Fall 2000 semester only. The site is maintained by Professor H, so any questions or problems with these pages should be sent to lheimann@andrew.cmu.edu.

HTML 1

HTML 2

HTML 3

JS Form Ex.

 

 

       
  You have been visiting:
http://www.andrew.cmu.edu/course/66-272/272labsF2000.html

A link back to the main CMU page
I know, like you really need or care about it.
Just tryin' to be a good CMU citizen here...
Wonderful hack news site!   Quchta' joH Yahweh HoSwIj.