COURSE INFORMATION
Course Title: WEB TECHNOLOGIES AND PROGRAMMING
Code Course Type Regular Semester Theory Practice Lab Credits ECTS
CEN 311 B 5 2 0 2 3 5
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) NA
Main Course Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: Dr. Rrezart Bozo rrbozo@epoka.edu.al , Tuesday 9:45-16:30
Second Course Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: M.Sc. Enesh Orazova eorazova@epoka.edu.al
Teaching Assistant(s) and Office Hours: NA
Language: English
Compulsory/Elective: Compulsory
Study program: (the study for which this course is offered) Bachelor in Business Informatics (3 years)
Classroom and Meeting Time: LAB III
Code of Ethics: Code of Ethics of EPOKA University
Regulation of EPOKA University "On Student Discipline"
Attendance Requirement:
Course Description: Introduction to Client Side and Server Side. An overview on HTML, CSS, client-server architecture, protocols such as HTTP, tools such as web, application, database, FTP, secure shell server. Application development using scripting languages. An overview in web servers and their services, how to configure them
Course Objectives: An overview in web servers and their services, and how to configure them. A knowledge on PHP Programming, PHP variables, Functions, Object Oriented Techniques and database connectivity from PHP. How to use interactively PHP with JavaScript and AJAX. Understanding other scripting languages such as CGI, JSP and other server-side languages
BASIC CONCEPTS OF THE COURSE
1 HTML, CSS, JS
2 Using PHP to develop web aplications
3 Using Mysql Database Server to create Databases for storing aplications data
COURSE OUTLINE
Week Topics
1 Introduction to Web Programming- This chapter gives you a quick overview of PHP syntax and language constructs. If you are already a PHP programmer, it might fill some gaps in your knowledge. If you have a background using C, Perl, Python, or another programming language, it will help you get up to speed quickly. Pages (1-12)
2 Web Servers, PHP and HTML forms - Installing and using a “Web Server” Embedding PHP in HTML Adding dynamic content Accessing form variables Pages (13-53)
3 Storing and Retrieving Data - Key topics covered in this chapter include ■ Saving data for later ■ Opening a file ■ Creating and writing to a file ■ Closing a file ■ Reading from a file ■ Locking files ■ Deleting files ■ Using other useful file functions ■ Doing it a better way: using database management systems Pages (53-75)
4 Using Arrays - Key topics covered in this chapter include ■ Numerically indexed arrays ■ Non-numerically indexed arrays ■ Array operators ■ Multidimensional arrays ■ Array sorting ■ Array functions Pages (75 -101)
5 String Manipulation and Regular Expressions - Key topics covered in this chapter include ■ Formatting strings ■ Joining and splitting strings ■ Comparing strings ■ Matching and replacing substrings with string functions ■ Using regular expressions Pages (101-131)
6 Object-Oriented PHP, File and Error Handling - This chapter explains concepts of object-oriented (OO) development and shows how they can be implemented in PHP.In this chapter, we explain the concept of exception handling and the way it is implemented in PHP. Exceptions provide a unified mechanism for handling errors in an extensible, maintainable, and object-oriented way Pages (159-209)
7 OBJECT ORIENTED PHP DESIGNING YOUR WEB DATABASE - Now that you are familiar with the basics of PHP, you can begin looking at integrating a database into your scripts. Pages (209-247)
8 Midterm
9 Working with Your MySQL Database - In this chapter, we discuss Structured Query Language (SQL) and its use in querying databases. You continue developing the Book-O-Rama database by learning how to insert, delete, and update data, and how to ask the database questions. Pages (247-271)
10 Accessing Your MySQL Database from the Web with PHP - Key topics covered in this chapter include ■ How web database architectures work ■ Querying a database from the web using the basic steps ■ Setting up a connection ■ Getting information about available databases ■ Choosing a database to use ■ Querying the database ■ Retrieving the query results ■ Disconnecting from the database ■ Putting new information in the database ■ Using prepared statements ■ Using other PHP-database interfaces ■ Using a generic database interface: PDO Pages (271 - 314)
11 Building Web Applications - How to use PHP build in functions to do the same things as PDO. (out fo book, a real world example)
12 Web Application Security Risks - In this chapter we look at application security, within the broader theme of securing an entire web application. Indeed, every single part of our web applications will need to be secured from possible misuse (accidental or intentional), and we will want to develop some strategies for developing our application that will help us stay secure. Pages (331-379)
13 Using PHP and MySQL for Large Projects - Key topics covered in this chapter include ■ Applying software engineering to web development ■ Planning and running a web application project ■ Reusing code ■ Writing maintainable code ■ Implementing version control ■ Choosing a development environment ■ Documenting your project ■ Prototyping ■ Separating logic, content, and presentation: PHP, HTML, and CSS ■ Optimizing code Pages (561-599)
14 Team projects developed during this course will be presented
Prerequisite(s): CEN 222, CEN 111
Textbook(s): PHP and MySQL: Web Development, 5th Edition, Luke Welling & Laura Thomson, Addison-Wesley 2016
Additional Literature: 1) Sams Teach Yourself PHP, MySQL & JavaScript All in One, Sixth Edition, Julie C. Meloni, Pearson 2018 2) PHP Cookbook, 2nd Edition, 2009, Adam Trachtenberg and David Sklar, O’Reilly 3) Intro to Java Programming, 10th Edition, Y. Daniel Liang, 2015
Laboratory Work: Yes
Computer Usage: Yes
Others: No
COURSE LEARNING OUTCOMES
1 Being able to design and implement server-side applications using PHP, MySQL, HTML, CSS
2 Understanding the difference of programming techniques and languages available to build a web application
3 To have the knowledge to critically analyze and evaluate web applications and protocols
4 Using PHP and MySQL for Large Projects
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution)
No Program Competencies Cont.
Bachelor in Business Informatics (3 years) Program
1 Identify activities, tasks, and skills in management, marketing, accounting, finance, and economics. 1
2 Apply key theories to practical problems within the global business context. 3
3 Demonstrate ethical, social, and legal responsibilities in organizations. 1
4 Develop an open minded-attitude through continuous learning and team-work. 1
5 Integrate different skills and approaches to be used in decision making and data management. 1
6 Combine computer skills with managerial skills, in the analysis of large amounts of data. 2
7 Provide solutions to complex information technology problems. 5
8 Recognize, analyze, and suggest various types of information-communication systems/services that are encountered in everyday life and in the business world. 5
COURSE EVALUATION METHOD
Method Quantity Percentage
Homework
1
5
Midterm Exam(s)
1
20
Project
1
20
Lab/Practical Exams(s)
5
1
Final Exam
1
50
Total Percent: 100%
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
Activities Quantity Duration(Hours) Total Workload(Hours)
Course Duration (Including the exam week: 16x Total course hours) 16 4 64
Hours for off-the-classroom study (Pre-study, practice) 16 2 32
Mid-terms 1 6 6
Assignments 5 2 10
Final examination 1 7 7
Other 1 6 6
Total Work Load:
125
Total Work Load/25(h):
5
ECTS Credit of the Course:
5
CONCLUDING REMARKS BY THE COURSE LECTURER

During this course students got knowledge in both client-side and server-side technologies, covering essential aspects from HTML and CSS to more complex topics like application security and database connectivity. It equips learners with the skills to develop dynamic and secure web applications using various scripting languages, with a particular focus on PHP and its interaction with MySQL Database for creating dynamic Websites. This knowledge opens the way for further exploration and mastery in web development, enabling developers to build robust, efficient, and user-friendly web applications.