Internet Systems Programming

Course Index
Return to Dr. Margush's page

Assignment list - jump to the most current

(No late HW assignments will be accepted)

HW1 - Typed or neatly printed copy due Jan 23 (Wednesday) at the start of class

P30: 2, 6, 9, 10, 14, 15, 18, 21, 26, 27
PG1 - Due Wednesday, January 30. Email me a link to the website when you are done. This is the only submission requirement for this project.

Web Page Design: Begin the design of a course website. Use only elements covered in chapter 2 of the text. Your pages must be XHTML 1.1 compliant and should display the W3C compliance logo. Include comments in each file and meta tags to identify the author and assignment information. You should not use a WYSIWYG editor - this is an HTML coding assignment.

Provide an index page (index.html) in your unix account public_html folder. This page must include some generic information about you (name, email address), a picture of yourself (or cartoon likeness), and some reference to the University of Akron and the course website. Hyperlink to the University, the class website, and your email (lookup the mailto syntax for hyperlinks). The email hyperlink must use only an image as the content - find a free animated GIF for this purpose.

Provide a link to a second page that provides more information about you as a student. You need to include information about classes (at least two classes must be listed) you are currently taking in a table. Show the class name, numbers, textbook, and instructor. Some of these entries should be hyperlinked to appropriate resources on the Internet. Use a caption in the table. Somewhere on the page tell a little bit about yourself, including professional goals and a perhaps a brief resume. Feel free to make stuff up - no need to divulge gobs of personal information if you do not want to.

The third document is a summary of this assignment. Write up what you did and how you accomplished it; tell what tools were used and where you obtained resources needed to complete the assignment; tell what you learned. There should be a hyperlink from the index page to this page - you will create a similar structure for each assignment (hyperlink and assignment summary page). These assignment hyperlinks should be organized as a list of some sort (right now it will have only one item).

Each page should have a link back to the index page.

HW2 - Typed or neatly printed copy due Jan 30 (Wednesday) at the start of class P90: 1, 4, 8, 9, 11, 13, 19, 23, 25, 27, 29, 31
HW3 - Typed or neatly printed copy due Feb 11 (Monday) at the start of class. The exercise must be printed.

P130: Review Exercises 7, 10, 11, 12, 17, 22, 25, 27, 28, 29

P131: Exercise 3.6

PG2 - Due Feb 15 (Friday). Email me a link to the website (the main index page) when you are done. The subject of the email must be Internet Systems Program Assignment 2. You must also turn in a printed copy of the external stylesheet.

Enhance your current website by adding some style. Do not use inline or document level stylesheets. Instead, use a stylesheet link (external style sheet) in all of your pages. In the stylesheet, define a style for the body tag that will standardize your documents. In particular: 

  • Provide a font-family (use the ideas mentioned in the text)
  • Specify a color scheme and overall font
  • Specify a background image if desired. Use an image editor (such as IrfanView) to size the image (the image should be at least 640x480 unless it is designed to be tiled) and wash out the contrast or otherwise alter the image so your fonts are easy to read when displayed over the graphic. If the image is not tiled, choose a background color for your pages that blends nicely with the image borders. Be sure that the image filesize is small (<=32K)

Add other style rules for the following

  • Define coordinating link styles (specify at least the 4 pseudo classes mentioned in the class notes) and do not make the hover effect obnoxious.
  • Specify a coordinating style for the heading tags (based on the general font selected for the body) including font and color
  • Add a style definition for ALL unordered lists that changes the default bullet to a gif or png image - select or create some small image that would be appropriate for this use. Ensure that nested lists have a different image or style. You need not worry about more than two levels.
  • Add one or more style classes (generic or not) and incorporate them in one or more of your documents. 
  • Add one additional page to your website (link to it from the main page with the text 'Program 2'). This page must describe what you did for this assignment. This page should include annotated samples of the styles and style classes you have defined. By this, I mean each style rule should be explained and a sample of its effect shown.

Turn in a printed copy of your documented style sheet. This means to add comments to the style sheet including your name, date, class, and brief explanations of each style rule. Make sure you use the correct comment syntax for style sheets.

HW 4 - Due Feb 25 (Monday) - Printed solutions please.

Page 187 (Exercises): 2, 3, 8 (put these all in one xhtml document in a script element) The array in 8 should be displayed in a table before and after zero removal)

Page 227 (Review Questions): 1, 9-13, 15

Show how to register an event handler in a form element that will prevent a form from ever being submitted: just complete this element... <form action='doitnot.php' method='POST' ___ >

PG3 - Due Feb 29 (Friday) - This is also the day of the test. Link this from your main page and email me when the program is ready. The subject of the email must be Internet Systems Program Assignment 3. You must also turn in a printed copy of the javascript file and a printed copy of the XHTML source.

Program 3 is a javascript enabled web page that will provide the ability to display numbers in different bases. The javascript MUST be in an external file. Be sure to document it well.

The xhtml page must use your style sheet. On the page, provide a textbox that allows any integer to be entered, and a button that when clicked, will display the desired numeric representation in a read-only textbox. The user should choose the desired base from a selection menu offering choices from 2 to 16. The choices on the menu must read Binary, Base Three, Base Four, Base Five, ..., Octal, ..., Decimal, ..., and Hexadecimal. The menu should default to Hexadecimal when the page is loaded. Be sure that the results are displayed whenever the button is clicked, or when the selection menu is changed, or when the input value changes (onchange). If the input field does not have a number in it (empty or illegal), you should display Not A Number as the result.

HW 5 - Due Mar 12 (Wednesday) - Printed solutions please.

Page 262 (Review Questions): 2, 3, 7, 8, 10

Page 263 (Exercises): Design a web page with a heading and four paragraphs of text. The paragraphs are all located at the same position. Only one should be initially visible. Just above the paragraphs are four tabs with appropriate labels (use span elements with class="tab") that will change color when the mouse goes over one of them. When the color changes in a tab, the corresponding paragraph is displayed (all other paragraphs are hidden). Use borders around at least some edges of the tabs and paragraphs. Put all your code in a single document.

PG4 - Due Mar 24 (Monday) - Link this from your main page and email me when the program is ready. The subject of the email must be Internet Systems Program Assignment 4. You must also turn in a printed copy of the javascript file and a printed copy of the XHTML source.

Program 4 is to practice DXHTML. Your web page will be a simple matching game. Display a grid of at least twelve pictures (all the same size). Each picture should appear exactly twice in the grid. The pictures must actually be hidden until clicked. Clicking one picture will display it. Clicking it again should do nothing. Clicking a different picture will show it and then check to see if the pictures match. If they do, the two pictures are replaced with something that no longer responds to clicks (these squares are now out of the game). Play continues until all matches are found.

Keep score somewhere on the page. The goal is to get all of the matches with the least number of attempts. Provide a way to start over. You could make this a learning game where some pictures are questions and others are answers. In this case, you should use appropriate images for the backgrounds, and place text in the grids as well. Be creative!

You need to devise a way to randomize the locations of the pictures each time the game begins.

Incorporate your style sheet. Feel free to add a second style sheet to this game page. Use an external JS file for most of the script. Avoid inline stylesheets.    

HW 6 - Due Mar 31 (Monday) - Printed solutions please. Page 307 (Review Questions): 3, 4, 6, 11, 15, 22, 25, 26, 35, 42, 43
Page 309 (Exercises): 1, 2 (all one exercise) Embed the DTD in the document.
HW 7 - Due Apr 16 (Wednesday) - Printed solutions please.Page 474 (Review Questions): 1-3, 4-6, 13, 19, 21-22, 29-32
Page 465 (Exercises): 1, 2 (median is the middle element, or the average of the two middle elements).
PG5 - Due Apr 28 (Monday) in class - Link this from your main page and email me when the program is ready. The subject of the email must be Internet Systems Program Assignment 5. You must also turn in a printed copy of the php file on the due date.Using PHP, design an image generation script to produce a page counter. Your page counter will be a PNG image with an n digit random number centered on the image. The script should accept the value for n (between 1 and 10 inclusive), a vertical size (1-5) and colors for the background and text. Supply defaults if one or more arguments are missing. The size is used to specify a font height; the image must be sized appropriately so the text fills most of the image space. You may begin with an image from disk (in which case the backgroundcolor would be ignored), or create one from scratch in the script. Your program must use a line, rectangle, or ellipse primitive in addition to the text primitive. The following link will return such an image (colors are specified in RGB decimal notation with commas as shown):
pagecount.php?numdigits=3&size=3&textcolor=0,255,72&backgroundcolor=0,0,0

You must also create a second program that presents and processes form data. The form will be used to manage a list of Internet favorites. These should be stored in a file accessed and updated byy the script. Use file locking. Display your page counter on the form's is web page, so everyone knows how popular your program is. Provide add, display, delete, and visit functions on your page. Everything must be provided for in a single script. To add favorites, the user should enter a URL, and a brief description of the site. Use a button to effect the add. Attempting to add a duplicate URL is handled silently by replacing the existing description with the new information provided. Be sure to account for special characters in data processed and displayed. The current favorites should be displayed in a table format, and have a delete and visit button (or link). Visiting should open the website in a new window. 
HW 8 - Due Apr 28Write a PHP script to use PHP sessions to require a user login and maintain state. The script should display a login page if no session is active. This page asks for an email address to identify the user. Accept anything other than an empty string. If a session is in progress, the user's email is displayed at the top of the page along with a logout button. On this page you should also display all session data (the entire contents of the session array) and allow new data to be added (key/value). Remember to use stripslashes and htmlspecialcharacters as appropriate. Consider this a HW assignment... turn in a printed copy of the script.

Return to Dr. Margush's page