Edinboro University

CSCI 323 Web Development
Fall 2019



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 a web editor, likely the the Adobe software

Your Homework Website:

Implement the following today:

  • Figure out how to access the cs server area for your web site (if its up and running by now)

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




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 competitors 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
  • SSI, look at how to make this work
  • Start Chapter 4
  • Some CSS examples
  • Good web site for colors
  • Continue on the table & hyper links exercise




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
  • CSS style sheet exercise
  • How to fade an image like on my sample project page

Set up a PHP "Sand Box" page

  • Display time
  • Implement an include

Chapter 5 - HTML Forms for Data Collection and Submission

Chapter 6 - Java-script for Client-Side 1

  • 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


Reading Day on Tuesday

Chapter 7- Java-script for Client-Side 2

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

Review for the exam


Connect to phpmyadmin


Exam 1 - 10/3

  • HTML 5
  • CSS w/sheet
  • Write Java Script
  • Small Application

Chapter 8 PHP & Connect to Database


Chapter 8 -PHP

  • 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

  • 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


Chapter 10

  ERD Diagram

  • What we've covered so far:
    • Email - should be implemented and working on your feedback form
    • Database - Should have at least 4 tables by now, maybe discuss our design
    • phpMyAdmin - Should be comfortable using at this point.
    • Connect - Looks like everyone is doing this.
  • Let's look at update today:



Review for the Exam

  • Closed book
  • Short answer questions
    • Java Script and its relationship to the DOM
    • What can javascript do for our sites
    • What is a regular expression
    • Understand how a form works
      • move the data to the next page and display it. ($_POST)
      • start a session
      • $_SESSION
      • POST, Action, onsubmit
    • Table design in a database
    • 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.

  • Review the status of the websites
  • Answer Questions

Exam 2 - Chapters 5 through (9 or 10) depending on where we are



Chapter 10

  • Go over exam
  • Start Ch 10 - More informaiotn on Interacting with a database using PHP and MySQL
  • Notes (PHP and connecting to database)
  • Answer questions on adding functionality to update a record in the database.




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

Chapter 11 - XML




Chapter 12


  • No Class Thursday




Open some student projects in class to critique

Review for Final Exam

Final Exam Period

Thursday the 12th @ 8:00 am

Helpful Homework Examples

If you want to see the admin and regular user interfaces:

    Admin Login:

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

    Non Admin Login

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


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 directly 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 Homework 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 placeholder pages
  • Some text about your company you wrote in the 1st assignment
  • footer; put your copyright note there for now


  • Similar to the one we started in class.
  • 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.



Create an Investment Calculator and post your homework page.

  • You could have radio buttons or drop-downs like we did in class.
  • Also add Validation for the input of Number of Years and Amount to Invest.
  • Should function similar (but not exactly) to this:

Put a link to this on your homework page.



Parallel Project for Chapter 5 (Only number 2, the satisfaction survey)
and parallel project for Chapter 6 (Only number 2)
and part of chapter 8's parallel project (Only number 2)

  • Create a feedback Form
  • Read the parallel project requirements from the book. This is based off of that but I want to make some changes like don't worry about #1 in chapter 5.
  • Validate all that makes sense to do so. 
  • Use a regular expression to validate the email (at least) You can use the built in HTML validator for the other fields.
  • Server-Side PHP processing for your feedback form
    • Business Owner (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
    • Make a link under the Admin menu to view the text file.



Chapter 7 Parallel Project:

  • Using Java Script
    • Add "Today's Date" on the home page.
    • Create a welcome Message on Home page that changes every time the page is accessed
    • Gather some images that relate to the product that you are selling and Add the rotating image functionality to the home page
  • Add an "About" page



Chapter 9 Parallel Project:

Using PHPMyAdmin create the 3 (maybe 4) tables (if you didn't do this already)

  • Customer
  • Product
  • Order
  • Line-item (possible 4th, this allows more then one item purchased per order)

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.

Sample 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)
  • Order Table
    • Transaction ID
    • Customer ID
    • Product ID
    • Quantity



Database Interaction: Add to your e-commerce web page the following:

  • Using PhpMyAdmin, add some dummy data to work with, For example 3 Customers and 3 Products
  • Customers Data Manipulation
    • Display all customers
    • Be able to add a Customer/Create an account (some simple validation)
    • Be able to edit a Customer (use a drop down selection like the class demo page)
  • Product Data Manipulation
    • Display all products
    • Be able to add a Product with some simple validation. In addition add the abiltiy to upload a photo of the new product.
    • Be able to edit a Product (use a drop down selection)




  • Add the ability to designate a user as an administrator
  • Add a separate menu drop down that show up if you are logged in as an administrator
  • Add the ability for administrator only:
    • move your add/edit functionality under the admin menu
    • move the viewing of the feedback under this menu


  • Add the functionality so that user login is carried from page to page for the user's entire visit
  • Have some sort of "Welcome Joe" on each page
  • Add the ability to see the logged in user's orders



Product Selection:

  • Add a way to see certian types of products
  • Add a way to see "Specials"
  • Add a way to purchase a product, see Tucker Shoes for an example. When a users buys something just have the purchase added to the orders table and disply the user's orders.


This is the sum of all the other assignments

Putting it all together

Grading Rubric

Purchase a Product & Putting it all together for a final product:

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

  • Overall good design
    • Tabs/block style links
    • Consider colors
    • Wrapper that is centered
  • 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)
    • 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