Edinboro University

CSCI 323 Web Development
Fall 2017


Monday Wednesday

Introduction to the course

  • Go over syllabus
  • What you'll learn
  • What you need
  • Assignments
  • Grading
  • Expectations
  • Lab time
  • Edinboro Network
  • Take roll
  • Make sure all of us can run the Adobe software

Your Homework Website:

Implement the following today:

  • Figure out how to access the cs server area for your web site

Web Site Work flow:

  1. Define scope of project, objectives, target audience, schedule & available resources
  2. Develop Design strategy and establish the look and feel of the web pages
  3. Develop Prototype (This will be our actual site)
  4. Present to client
  5. Assemble & create the web site.

How to Host:

  1. We'll have a csci323 domain for this course.
  2. connect to cslab100.cs.edinboro.edu
  3. Location of files:
  4. Your Web area (sample)
  5. Look at Chapter 2 notes for more info.

Chapter 1 - Setting the Scene



Labor day

No class

Chapter 2 -Establishing a Web Presence

  • Chapter 2 Notes
  • This includes some screen shots of FileZilla and PuTTY
  • Download:
  • Work on our initial web pages. We can save to a flash drive if you don't have an account or public_html directory yet.
  • Make a page for our assignments.

Chapter 3 - HTML for Content Structure

  • Chapter 3 Notes -> We look at a trimmed version of these notes, we cover this material via demo.  Most should be a quick review from the 1st web course.
  • Initial Pages
    • Add DIVs
    • hyper-links
    • CSS
    • Buttons ?
    • Look at competors web sites, steal ideas
  • Intro to Photoshop
    • Text as image
      • Create a heading for your project
      • text effects
    • Colors
    • Cropping
    • Backgrounds
      • getting from web
      • Centering on page
    • Save for Web
    • Transparency
    • File types
  • Looks like SSI is not working


Chapter 3- HTML for Content Structure

  • Continue on the table & hyper links exercise
  • Start Chapter 4
  • Some CSS examples
  • Good web site for colors


Chapter 4 - CSS for Content Presentation

  • Chapter 4 Notes
  • Create a simple CSS file for our site.
  • Make a class
  • Make use of an ID to style one particular item on your page.
  • Let's make a div style parameters and see what is available.
  • Look at Navigation

Chapter 4 - CSS for Content Presentation

  • Continue on the CSS style sheet exercise
  • How to fade an image like on my sample project page

Chapter 5 - HTML Forms for Data Collection and Submission


Chapter 6

  • Chapter 6 Notes
  • Discuss Regular expressions
    • sequence of characters that forms a search pattern
    • we are using these to validate the users input
    • we are "searching" for a pattern of characters
    • use in the javascript search() function
    • https://regex101.com/
  • Work on Validating our feedback
  • Add the products page

Chapter 7

  • Chapter 7 Notes
  • Java Script
  • Work on rotating image div on your home page.



Exam 1

  • HTML 5
  • CSS w/sheet
  • Write JavaScript
  • Small Application


Chapter 7

  • Review of Exam 1
  • Go over example of making in-line block type of menu for our site.
  • We need to add the rotating images
  • Create a simple PHP pageto show the current time

Chapter 7


Chapter 8

  • Start Chapter 8
  • Make use of the PHP include
  • Work on the Feedback Form
    • Send an email
    • Create and log the feedback responses to a text file on the server

Chapter 8

  • Continue on Chapter 8

Chapter 8

  • Finish Notes

Chapter 9

  • Review basic concepts of database
  • Propose a simple E-R diagram
  • Lab time to work on PHP E-mail and collection of data for your project.
  • Chapter 9 Notes



Chapter 9

A good site with examples of using PHP to connect -> examples

Good Summary of Database Theory


Chapter 9 or 10

  ERD Diagram

  • Email - should be working, Let's test it
  • Database - Discuss our design
  • phpMyAdmin - Login & create a table
  • Connect - Write the PHP to connect

Review for the Exam

  • Closed book
  • Short answer questions
    • Similar to what we did in class for connecting to a database and printing data out.
    • Understand how a form works
      • move the data to the next page and display it. ($_POST)
      • start a session
      • $_SESSION
      • POST, Action, onsubmit
    • Write the SQL to display the data
    • Write some generic SQL
      • Display data sorted
      • Display only certain data
      • Add a record
    • Add data from form to database
    • Some short answer database questions
      • relations ?
      • referential integrity
      • E-R diagram
      • Primary Key
      • Foreign Key
  • Review the questions in the book at the end of the chapters.

Exam 2 - Chapters 5 through 9



Chapter 10

  • Go over exam
  • Start Ch 10
  • Notes
  • Connect to our database

Chapter 10

  • Notes
  • Let's add functionality to Update a record in the database.


  • Project day
  • I'd like to see the status of your last project


  • No Class

Chapter 11


Chapter 12

12/4 Final Student Presentations: Final Student Presentations:
Final Student Presentations: Wednesday at 2:45

Subject to change Assignments
Due Date Description



Both Chapter 1 and Chapter 2 "Exercise on the Parallel Project" combined

At the end of the 1st chapter are the exercises (blue pages) do "Exercises on the Parallel Project". We'll put the results in your student web direclty on the cs domain.

For the 2nd Chapter's "Exercise on the Parallel Project" Let's make a simple web page and put a link from your homework page to this assignment. Look at this in other browsers and make sure it looks ok.

Sample Homwork Page (will expand as the semester goes on)



Chapter 3 "Exercise on the Parallel Project"

What you need:

  • Your initial page for your product
  • Good layout like we did in class,
    • header, nav, main footer DIVs
    • centered
    • Appropriate and good color selection
  • Heading graphic that we made in Photoshop
  • Menu where the links go to other placerholder pages
  • Some text about your company you wrote inthe 1st assignment
  • footer; put your copyright note there for now


  • Similar to the one we started in class.
  • See Sample Homwork Page
  • Lets look into using Server Side Includes but it looks like the ability to use them is not enabled on our apache server.
  • Make sure you test your page!! - have a friend look at it or look at it off campus.



Add much more CSS the previous homework assignment

Parallel project from Chapter 4 (But use CSS not javaScript for making your menus!)

  • Use a separate CSS style sheet
  • CSS styled menu
    • Box style menu
    • Good colors
    • Drop down menu when the user hovers
  • Good placement and width of menu & buttons that fits most screens (1000px) But you can have a top banner all the way across if you want.
  • I want DIVs for the Header, Nav, Main (text of page) and footer.  I also recommend a wrapper of the whole thing.
  • Compare to other sites that sell what you are selling.
  • Make it look like it could be a real e-commerce site.





Parallel Project for Chapter 5

  • Feedback Form
  • Products selection Form
  • Read the parallel project requirements carefully from the book.
  • The CD ROM had good examples for this assignment
  • And the stuff we did in class



Chapter 6 - 6.15 Exercises on the Parallel Project

Validate all that makes sense to do so. 

On my example I would validate

  • Quantity
  • First Name
  • Last Name
  • E-Mail

Parallel Project Exercise p. 255

  1. Gather some images that relate to the product that you are selling
  2. Add the rotating image functionality talked about in this chapter
  3. Add the drop down menu functionality to your home page.
    1. I know there are other options but use javascript for this
    2. Modify your other pages accordingly




Chapter 8 Parallel Project: p. 302

  • Welcome Message on Home page that changes every time the page is accessed
  • Server-Side PHP processing for your feedback form
    • You receive an e-mail message
    • The user gets an e-mail confirmation message
    • New web page confirming the feedback submission
    • Save the feedback to a text file on the server like in class
  • Server-Side PHP processing for an order
    • Same features as above when the user submits an order



Chapter 9 Parallel Project: p. 362

Answers questions 1 through 6. Remember not to make it to big, no way near as big as the author's. I'm thinking 3 or 4 tables max.

Make me a simple web page with a screen shot of your E-R diagram from PhP MyAdmin.



"The Big Project - Putting it all together"   

My Sample Project

If you want to see the admin and non-admin stuff:

Admin Login:

  • UN: dtucker@edinboro.edu
  • PW: password

Non Admin Login

  • UN: jwilson@edinboro.edu
  • PW: password

Check out --> Grading Rubric

Chapter 10 Parallel Project: p. 439 - (Final Project)

incorporate all of your previous work, but make it its own link.

More specifically: "When I run your web site"

  • Overall good design
    • Tabs/block style links
    • Consider colors
    • Wrapper that is centered
  • "Today's Date" on the home page or some sort of updating.
  • Survey / Feedback page with PhP e-mailing
    • User gets a confirmation
    • Send to your Edinboro account the actual question
    • Append to a text file.
  • I'd like to be able to add a customer (using your previous form; maintain your previous validation)
  • Add some dummy data to your tables - customers, products and transactions
  • Run a query to display all the customers
  • Simple page to add a product, make simple admin link, you don't need to log in. Put near bottom of home page near copyright.
  • Validation on all forms
    • Doesn't have to be perfect at a minimum make sure the fields are not blank.
    • But use the regular expression check for the e-mail
  • Run a query to display all products (like your are shopping)
    • 10 Bonus points if you include an image of the products
    • Customer can Purchase a product
    • Its ok if you can only purchase one or more of a single product at a time.
    • Provide the total cost (quantity * cost + tax)
  • Query to see all purchases
    • Customer and product
    • Quantity

Tables (for example only, yours will probably differ):

  • Each table should have its own ID as primary key
  • Customer Table:
    • Customer ID
    • First Name
    • Last Name
    • e-mail
    • Address
  • Products Table
    • Product ID
    • Price
    • Quantity In Stock
    • Description (memo)
  • Transaction Table
    • Transaction ID
    • Customer ID
    • Product ID
    • Quantity