Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
Course Syllabus
1. Course Information
Course Title Web Programming II Course Code CSC216
Number of Credits 3 Lectures per Week 1
Academic Year 2025-2026 Semester Fall
Schedule Time M 10:00-13:00 Room 112
T 14:00-17:00
Learning Experience ⃝ Theoretical Lectures ⃝ Lab Practice ⃝ Internship ⃝ Seminars ⃝ Other
Instructor Name Dr. Bassel Marhaba Email [Link]@[Link]
2. Course Description and Objectives
2.a. Course Description
This course enables students to build dynamic database-driven (e-commerce) websites using the
PHP programming language. The course is explicitly meant for students with limited experience and
discusses basic programming building blocks needed to create interactive, dynamic websites. PHP is
an open source-based programming language widely used on the Internet for both commercial and
non-commercial websites such as Facebook, Wikipedia, and others. This course gives an
introduction to programming with PHP in combination with some simple database techniques in
order to be able to understand how dynamic websites work.
2.b. Course Objectives
In this PHP and MySQL course, students will gain a comprehensive understanding of web development
fundamentals, covering client-server architecture, HTTP, and web protocols. The course objectives
include mastering the PHP programming language, developing proficiency in syntax, data types, and
control structures, and applying object-oriented programming principles. Students will also learn
database management using MySQL, designing and implementing relational databases, and
performing CRUD operations. Emphasis will be placed on integrating PHP and MySQL for creating
dynamic, data-driven web applications while adhering to security best practices to prevent
vulnerabilities like SQL injection and XSS. The course will cover the Model-View-Controller (MVC)
architecture, collaborative development using version control systems, and hands-on project-based
learning to apply acquired skills. Additionally, students will explore optimization and performance
strategies, industry-relevant skills for web development roles, and foster critical thinking and problem-
solving abilities in real-world scenarios. Upon completion, students will be well-prepared for entry-level
positions involving PHP and MySQL in the workforce.
2.c. Student Learning Outcomes
-1-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
After the completion of this course, the successful student will be able to:
o Understand the Basics of Web Development.
o Describe the client-server architecture of web applications.
o Explain the role of PHP and MySQL in web development.
• Master PHP Programming:
o Write PHP code to handle form submissions and user input.
o Create and manipulate variables, arrays, and data types in PHP.
o Implement control structures (if statements, loops) and functions in PHP.
o Use sessions and cookies to manage user data.
• Database Design and MySQL:
o Design and implement a relational database using MySQL.
o Define database tables, fields, and relationships.
o Write SQL queries for database operations (select, insert, update, delete).
o Understand indexing and optimization techniques.
• Integration of PHP and MySQL:
o Connect PHP applications to a MySQL database.
o Retrieve and display data from a database in a web application.
o Implement data validation and sanitization to enhance security.
2.d. Tentative Course Schedule
Week Contents
Introduction to Web Development and PHP Basics
• Introduction to web development:
2
o Understanding client-server architecture
&
o Overview of front-end and back-end technologies
Overview of PHP:
1
History and purpose of PHP
Week
o PHP as a server-side scripting language
• Setting up a development environment:
-2-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
o Installing XAMPP, WampServer, or similar tools
o Configuring a local development server
• PHP syntax and variables:
o Basic syntax rules
o Declaring variables and data types
o Variable scope and lifetime
• Data types and operators:
o Scalar data types (integers, floats, strings)
o Complex data types (arrays, objects)
o Arithmetic, comparison, and logical operators
• Control structures:
o If statements
o Loops (for, while, do-while)
PHP Functions and Forms
• Functions in PHP:
o Built-in functions
o Creating and using user-defined functions
o Function parameters and return values
4
Form handling in PHP:
&
o HTML forms and form elements
Week 3
o Submitting forms using the POST and GET methods
o Handling form data in PHP
• Form validation and security:
o Client-side vs. server-side validation
o Sanitizing and validating user input
-3-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
o Implementing secure coding practices
• Working with user input:
o Processing form data
o Uploading files
o Handling user authentication
PHP and Databases (MySQL)
• Introduction to databases:
o Basics of relational databases
o Understanding database management systems
• MySQL database basics:
o Creating databases and tables
o Data types in MySQL
o Primary keys and foreign keys
6
• PHP and MySQL connection:
Week 5 &
o Connecting to MySQL database using PHP
o Error handling and connection management
• Performing CRUD operations:
o Inserting, retrieving, updating, and deleting data
o Executing SQL queries in PHP
• SQL queries and data manipulation:
o SELECT, UPDATE, DELETE queries
o Joins and subqueries
Midterm Exam
7
-4-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
Session Management and Cookies
• PHP sessions:
o Understanding session management
o Starting, modifying, and destroying sessions
o Session security considerations
• Cookies and their usage:
9
o Setting and retrieving cookies
Week 8 &
o Expiring cookies and cookie security
o Using cookies for session tracking
• Handling user authentication:
o Implementing login/logout functionality
o Authentication best practices
o Password hashing and salting
Building a Simple Web Application
• Project development:
o Planning and designing a basic CRUD application
o Implementing the application using PHP and MySQL
Integrating PHP and MySQL:
11
o Connecting the application to a MySQL database
Week 10 &
o Performing CRUD operations in the application
• Troubleshooting and debugging:
o Debugging techniques in PHP
o Handling common issues in web development
• Project deployment and hosting considerations:
o Deploying the application to a web server
-5-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
o Considerations for choosing a hosting environment
Final Project and Review
• Final project presentation:
o Each student presents their completed web application
o Demonstration of functionality and features
• Code review and feedback:
Peer code reviews
13
o Instructor feedback on code quality and best practices
Week 12 &
• Q&A session:
o Addressing questions from students
o Clarifications on course topics
• Course wrap-up:
o Review of key concepts
o Future learning paths and resources
o Course evaluation and feedback
Final Exam
14
2.e. Course Materials
Each lecture, along with the required documents, homework, and assignments, is accessible
electronically through the student’s UMS account.
• Main reference: : PHP and MySQL for Dynamic Web Sites - Fifth Edition - Larry
Ullman
2.f. Grade Distribution
• Attendance: 10%
• Class Activities: 20%
-6-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
• Midterm Exam: 30%
• Final Exam: 40%
3. University General Academic Policies
3.a. Evaluation
Throughout the semester, there will be assignments with specific due dates, quizzes, and a midterm
exam. Additionally, a final exam is scheduled. Remember that in order to succeed in this course, we
expect the following from all students:
• Attendance Policy: Students are allowed a maximum of two weeks of absences during any
semester (or one week for the summer semester), whether excused or otherwise. Even
during their absence, students remain responsible for all material presented in the classroom.
If a student exceeds the allowed number of absences, they must withdraw from the course.
• Active Engagement: Attend lectures, participate in discussions, and collaborate with your
peers. Engage thoughtfully with the material and contribute to a vibrant learning
environment.
• Preparation: Come to class having reviewed the assigned readings or materials. Be ready to
ask questions and share insights.
• Respectful Behavior: Treat your fellow classmates, the instructor, and guest speakers with
respect. We value diverse perspectives and encourage a supportive atmosphere.
• Make-Up Exam Policy: Please be aware that make-up exams will not be available.
3.b. Grading Scale
Letter Scale 100-Point Scale Description
A+ 95-100 Outstanding
A 90-94 Excellent
B+ 85-89 Very Good
B 80-84 Very Good
C+ 75-79 Good
C 70-74 Good
D+ 65-69 Fair
D 60-64 Weak
F <60 Fail
I - Incomplete
W - Withdrawal
IP - In Progress
P - Pass
-7-
Jinan University
Faculty of Sciences
Department of Computer Science
Tripoli Campus
3.c. End-of-Course Evaluation Survey
Dear Student,
We greatly value your input regarding your educational experience in this class. Your comments play
a crucial role in shaping the future planning and delivery of our curriculum. As the course concludes,
please take a moment to complete the anonymous course evaluation survey via UMS (University
Management System).
We kindly request that you take a few moments to complete this survey. Rest assured that your
responses are completely anonymous and will be treated with the utmost confidentiality.
Thank you
-8-