Catalog Description

Formerly known as CSCI 303
Prerequisite: Completion of CSCI 12 or 27 with grade of "C" or better
Advisory: Completion of CSCI 62 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Description: Create dynamic, session-oriented, data-driven web sites using the PHP scripting language. Covers processing fill-out forms, database backends, session management, authentication and searching. (CSU)

Course Student Learning Outcomes

  • CSLO #1: Explain the basics of MySQL and its application towards a dynamic web page.
  • CSLO #2: Apply the basics of PHP and its application with HTML.
  • CSLO #3: Design and implement a dynamic data-driven web site using PHP, HTML and MySQL.

Effective Term

Fall 2020

Course Type

Credit - Degree-applicable

Contact Hours

72

Outside of Class Hours

90

Total Student Learning Hours

162

Course Objectives

Lecture Objectives:
1. Identify the different languages used in a PHP application: PHP, HTML, JavaScript, and CSS.
2. Interpret server error messages and identify the location of the error.
3. Identify components of a WAMP or LAMP server.
4. Construct regular expressions to validate input.
5. Compare and contrast various data security techniques: encryption, hashing, file permissions, and authentication.
6. Analyze the data needs of a customer and construct normalized database tables.
Laboratory Objectives:
1. Write PHP programs utilizing fundamental programming concepts: variables, methods, conditionals, and loops.
2. Analyze PHP programs and correct errors (bugs) so the programs run correctly.
3. Write correct SQL (Structured Query Language) statements using the basic SQL commands: CREATE TABLE, DROP TABLE, SELECT, INSERT, UPDATE, and DELETE.
4. Create a database-backed PHP application and demonstrate its correctness.
5. Utilize session management techniques (including session IDs and cookies) in a PHP application.
6. Identify possible SQL injection attack vectors using common probing techniques.

General Education Information

  • Approved College Associate Degree GE Applicability
    • CSU GE Applicability (Recommended-requires CSU approval)
      • Cal-GETC Applicability (Recommended - Requires External Approval)
        • IGETC Applicability (Recommended-requires CSU/UC approval)

          Articulation Information

          • CSU Transferable

          Methods of Evaluation

          • Essay Examinations
            • Example: In an essay, describe how "cookies" are used to track user sessions. How could they also be used to track web usage behavior over time? Rubric Grading.
          • Objective Examinations
            • Example: Example: What will be the output of the following PHP code? < ?php echo str_pad("Salad", 5)." is good."; ?>
          • Problem Solving Examinations
            • Example: Utilizing PHP database access techniques obtained from your textbook and from classroom discussion, design and write a computer program that retrieves and displays data about a used car inventory based on user input. Rubric Grading.
          • Projects
            • Example: Create a web application for a company so that an admin can do the following: add a new employee, delete an employee, update employee's salary and view the list of the employee. You need to create database tables for the employee's information. Rubric Grading.

          Repeatable

          No

          Methods of Instruction

          • Laboratory
          • Lecture/Discussion
          • Distance Learning

          Lab:

          1. Following an instructor discussion on PHP programs and application:
          2. Students will be given a PHP program to analyze and correct the errors (bugs). (Laboratory Objective 2)
          3. Create a database-backed PHP application and demonstrate its correctness. (Laboratory Objective 5)

          Lecture:

          1. Assume that students have read bout various data security techniques such as encryption, hashing, file permissions, and authentication. During the lecture and class discussion instructor explains each one of the techniques through examples. Students will be be asked to write a program for one of the discussed techniques. (Lecture Objective 5)

          Distance Learning

          1. Assume that students have read bout various data security techniques such as encryption, hashing, file permissions, and authentication. During the video lecture instructor explains each one of the techniques through examples. Students will be be asked to write a program for one of the discussed techniques after they watch the video. (Lecture Objective 5)

          Typical Out of Class Assignments

          Reading Assignments

          1. Read the textbook about database table normalization. Identify the criteria of the first, second, and third normal forms and be prepared to discuss in class. 2. Read online reference documentation to learn about regular expression metacharacters. Be ready to answer questions during the lecture.

          Writing, Problem Solving or Performance

          1. There are many web application frameworks available. Write a research paper comparing and contrasting Ruby on Rails, Zope, J2EE, and Django. Include code examples for a basic "Hello World" web-based application. 2. Design an appropriate model for representing a meeting or appointment in a calendar. What data fields would you use? What would be the methods for working with the data? Write a 2-page report about your design in which you address the shortcomings and places where the design needs improvement.

          Other (Term projects, research papers, portfolios, etc.)

          Required Materials

          • PHP and MySQL Web Development
            • Author: Welling, Luke and Laura Thomson
            • Publisher: Addison-Wesley
            • Publication Date: 2016
            • Text Edition: 5th
            • Classic Textbook?: No
            • OER Link:
            • OER:
          • Learning PHP, MySQL, JavaScript, and CSS
            • Author: Nixon, Robin
            • Publisher: O'Reilly & Associates
            • Publication Date: 2018
            • Text Edition: 2nd
            • Classic Textbook?: No
            • OER Link:
            • OER:

          Other materials and-or supplies required of students that contribute to the cost of the course.