Report
Report
BY
FUKU/FSS/21B/GEO/0088
UNDERTAKEN AT
November,2024
i
DECLARATION
I hereby declare that this work is the product of my training effort, undertaken under
the supervision of Mrs. Sa’adatu Ali Jijji, and has not been presented and will not
be presented elsewhere for the fulfillment of any Industrial Training requirement.
ii
CERTIFICATION
This is to certify that the report was carried out under my/our supervision.
_____________________ _________________
iii
DEDICATION
To my amazing mother, who showed me that even the biggest challenges can be
overcome through hard work and staying true to oneself.
iv
ACKNOWLEDGEMENTS
I express my deepest gratitude to Almighty Allah (S.W.T) for His blessings and
guidance in making it possible for me to embark on this exciting and diverse
academic journey in the field of Computer Science. Choosing this path has been a
significant decision in my life, and I am thankful for the strength and wisdom He has
bestowed upon me. I pray that the knowledge gained through this endeavor will be
beneficial to everyone and that His guidance will continue to illuminate my path.
I am particularly thankful to Mr. Sulaiman and Mr. Abbas, Head of Education and
Training at BRIATEK, for giving me the opportunity to work with such a prestigious
organization. This experience has not only broadened my awareness of the latest
developments in the field but also emphasized the importance of teamwork and
collaboration. Their support and the opportunities provided by BRIATEK will remain
in my professional development for life.
v
TABLE OF CONTENTS
DECLARATION ..................................................................................................................ii
CERTIFICATION ............................................................................................................... iii
DEDICATION ....................................................................................................................iv
ACKNOWLEDGEMENTS .................................................................................................. v
TABLE OF CONTENTS .....................................................................................................vi
LIST OF TABLES/FIGURES/PLATES/APPENDICES ...................................................... viii
ABBREVIATIONS/DEFINITIONS/GLOSSARIES AND SYMBOLS ....................................ix
CHAPTER ONE ................................................................................................................ 1
1.1 Introduction.................................................................................................................. 1
1.2 Bodies Involved in SIWES ........................................................................................... 2
1.3 Vision Statement ......................................................................................................... 2
1.4 Mission Statement ....................................................................................................... 3
1.5 Aims of SIWES ............................................................................................................ 3
1.6 Objectives & Scope of SIWES in Nigeria ..................................................................... 3
1.7 Roles of Various Organizations Associated with the Management of SIWES ............... 3
1.7.1 Roles Of Industrial Training Fund (I.T.F) ................................................................... 4
1.7.2 The Roles of Higher Institutions ................................................................................ 4
1.7.3 Role of Students/Organizations ................................................................................ 5
1.8 Background History of BRIATEK Computers Nigeria Limited ....................................... 5
1.9 BRIATEK Computers Nigeria Limited Organizational Chart ......................................... 7
CHAPTER TWO ................................................................................................................ 8
2.1 Introduction Description of Work Done......................................................................... 8
2.2 Introduction to PHP ..................................................................................................... 8
2.2.1 PHP Programming .................................................................................................... 8
2.2.2 Data Types and Variables in PHP ............................................................................. 9
2.2.3 Control Structures in PHP ....................................................................................... 10
2.2.4 Loops in PHP.......................................................................................................... 11
2.2.5 Functions in PHP .................................................................................................... 13
2.2.6 File Handling in PHP............................................................................................... 14
2.2.7 Object Oriented Programming in PHP .................................................................... 14
2.2.8 Error Handling in PHP ............................................................................................ 16
2.3 MySQL Database ...................................................................................................... 17
2.3.1 Introduction to MySQL ............................................................................................ 17
2.3.2 MySQL Overview .................................................................................................... 17
2.3.3 Database Design .................................................................................................... 18
2.3.4 Data Types in MySQL ............................................................................................. 19
vi
2.3.5 Basic SQL Queries ................................................................................................. 19
2.3.6 Joins and Relationships .......................................................................................... 20
2.3.7 Database Optimization ........................................................................................... 21
2.3.8 Error Handling in MySQL ........................................................................................ 21
2.4 Python Programming ................................................................................................. 22
2.4.1 Introduction to Python ............................................................................................. 23
2.4.2 Data Types and Variables in Python ....................................................................... 23
2.4.3 Control Structures in Python ................................................................................... 24
2.4.4 Loops in Python ...................................................................................................... 25
2.4.5 Functions in Python ................................................................................................ 26
2.4.6 File Handling in Python ........................................................................................... 27
2.4.7 Object Oriented Programming in Python................................................................. 28
2.4.8 Error Handling in Python ......................................................................................... 29
CHAPTER THREE .......................................................................................................... 30
3.1 Application of Knowledge Acquired ............................................................................ 30
3.2 Introduction................................................................................................................ 30
3.3 Hotel Management System........................................................................................ 30
3.4 Objectives of The System .......................................................................................... 30
3.5 Interface of The System ............................................................................................. 30
3.5.1 Visitor Home Page .................................................................................................. 31
3.5.2 Administrator Dashboard ........................................................................................ 32
3.5.3 Visitor Booking Panel .............................................................................................. 33
3.5.4 Approve Booking Managenent ................................................................................ 34
3.5.5 Check In and Out Guest Dashboard ....................................................................... 35
3.5.6 Staff Management .................................................................................................. 36
3.5.7 Room Management ................................................................................................ 37
3.5.8 Add Administrator Panel ......................................................................................... 38
3.5.9 Restaurant Menu .................................................................................................... 39
3.6 Problems Encountered .............................................................................................. 40
3.7 Possible Suggestion to the Problem .......................................................................... 40
CHAPTER FOUR ............................................................................................................ 41
4.1 Summary ................................................................................................................... 41
4.2 Conclusion................................................................................................................. 41
4.3 Recommendations..................................................................................................... 42
4.4 References ................................................................................................................ 43
vii
LIST OF TABLES/FIGURES/PLATES/APPENDICES
Figure 1: Organizational chart of BRIATEK Computer Nigeria Limited…………….….7
viii
ABBREVIATIONS/DEFINITIONS/GLOSSARIES AND SYMBOLS
ix
CHAPTER ONE
Introduction
SIWES was established by Industrial Training Funds (ITF) in the year 1973 to solve
the problem of lack of adequate proper skills for employment of tertiary institution
graduates by Nigerian Industries. The Students Industrial Work Experience Scheme
(SIWES) was founded to be a skill training program to help expose and prepare
students of universities, polytechnics, and colleges of education for the industrial
work situation to be met after graduation. This scheme serves as a smooth transition
from the classroom to the world of work and further helps in the application of
knowledge. The scheme provides students with the opportunity to acquire and
expose themselves to the experience required in handling and managing equipment
and machinery that are usually not made available in their institutions.
Before this scheme was established, there was a growing concern and trend noticed
by industrialists that graduates of higher institutions lacked sufficient practical
background for employment. It used to be that students who got into Nigerian
institutions to study science and technology were not trained in the practical know
how of their various fields of study. As a result, they could not easily find jobs due to
the lack of working experience. Therefore, the employers thought that theoretical
education going on in higher institutions was not responsive to the needs of the
employers of labour.
This was a huge problem for thousands of Nigerians until 1973. It is against this
background that the fundamental reason for initiating and designing the scheme by
the fund in 1973/74 was introduced.
The ITF organization decided to help all interested Nigerian students and established
the SIWES program. It was officially approved and presented by the Federal
Government in 1974. The scheme was solely funded by the ITF during its formative
years but as the financial involvement became unbearable to the fund, it withdrew
from the scheme in 1978. In 1979, the federal government handed over the
management of the scheme to both the NUC and the NBTE. Later, in November
1984, the federal government reverted the management and implementation of the
1
scheme to ITF. In July 1985, it was taken over by the ITF while the funding was
solely borne by the federal government. (Culled from Job Specifications on Students
Industrial Work Experience Scheme).
The main bodies involved in the Student Industrial Work Experience Scheme are;
the tertiary institutions and the Federal Government through the ITF.
Industry/Employers
Supervise students at their places of attachment and sign their log book and
ITF forms.
Vet and process student's Log books and forward them to ITF area office
2
1.4 Mission Statement
To set and regulate standards and offer direct training intervention in industrial and
commercial skills training and development, using a corps of highly competent
professional staff, modern techniques, and technology.
2. Prepare the students for the industrial work situation they’re likely to meet
after graduation.
4. Make the transition from school to the world of work easier and enhance
students' contact for later job placement.
The sustainability and effectiveness of the SIWES rely on the collaborative efforts of
various organizations. These include the Federal Government, the ITF, and
3
collaborative agencies such as the N.U.C and the Nigerian Labor Congress (NLC).
Each entity plays a crucial role in overseeing and managing different aspects of the
SIWES program, ensuring its success and impact.
The ITF assumes several vital roles in the administration and management of the
SIWES program viz:
Higher institutions play crucial roles in the successful implementation of the SIWES.
These roles encompass various responsibilities, including:
4
5. Identifying and facilitating opportunities for trained students' placement with
employers upon completion of their attachments, among other duties.
2. Adhering strictly to the rules and regulations of the organizations where they
are attached, demonstrating obedience to authorities and respect for
workplace protocols.
5
Over the years, BRIATEK has evolved into a comprehensive learning hub, offering
extensive training programs in various fields of computer science. These programs
encompass web design and development, mobile application development,
database management, content management systems (CMS), and more. Through
its robust curriculum and hands on approach, the institute equips students with
practical skills and knowledge essential for success in the rapidly evolving IT
industry.
Situated in the heart of Gombe Local Government shopping complex, BBU No.3-5
near Tudun Hatsi, Gombe state, Nigeria, BRIATEK Computers Nigeria Limited has
established itself as a pioneering force in the realm of computer education and ICT
solutions. Its commitment to excellence and innovation has positioned it as a leader
in providing cutting edge learning solutions not only in Gombe but also beyond its
borders.
6
1.8 BRIATEK Computers Nigeria Limited Organizational Chart
7
CHAPTER TWO
WORK EXPERIENCE
During my six months SIWES program at BRIATEK Computers Nigeria Limited, all
lectures and practical works took place at the company where all resource persons
came to teach us the practical skills, The activities, knowledge and skills I acquired
during the period of attachment in BRIATEK include but not limited to the following:
i. PHP Programming
ii. MySQL
PHP was originally created in 1994 by Rasmus Lerdorf and has since evolved into a
full-fledged programming language with extensive features for web development. It is
especially known for its simplicity, making it accessible to beginners while also
providing powerful tools for professional developers. PHP code is typically enclosed
within special tags like <?php ... ?>, allowing it to be integrated seamlessly into
HTML.
PHP (Hypertext Preprocessor) is a widely used, open source, server side scripting
language designed for web development. It is especially suited for creating dynamic
and interactive web pages, and it can be embedded directly into HTML. The PHP
language executes on the server, producing HTML content that is then sent to the
client's browser. With its versatility and ease of integration with databases, PHP is a
popular choice for building web applications and websites.
Basic Syntax
PHP code is written within a script tag that begins with <?php and ends with ?>. The
PHP interpreter will execute the code inside these tags, allowing developers to
intermix PHP with HTML code. Each statement in PHP ends with a semicolon (;),
8
and comments can be made using // for single line comments or /* ... */ for multi line
comments.
<?php
?>
In this script, the echo statement is used to display the text "Hello, World!" in a web
browser. PHP also supports various operators (arithmetic, comparison, logical) and
follows a structure similar to other C style languages.
In PHP, variables are used to store data values and are defined with a dollar sign ($)
followed by the variable name. Variable names are case sensitive and must start
with a letter or an underscore.
Example:
<?php
?>
9
8. Resource: Holds a reference to an external resource like a database
connection.
Control structures in PHP allow developers to dictate the flow of the program based
on various conditions.
Conditional Statements
<?php
$age = 20;
?>
If-Else Statement: Executes one block of code if the condition is true, and another
block if it is false.
<?php
$age = 16;
} else {
?>
10
Switch Statement: Compares a variable against multiple values, executing different
blocks of code based on the matching case.
<?php
$day = "Monday";
switch ($day) {
case "Monday":
break;
case "Friday":
break;
default:
?>
<?php
?>
While Loop: Continues to execute a block of code while a specified condition is true.
11
<?php
$i = 0;
$i++;
?>
Do-While Loop: Executes a block of code at least once, and then repeats it as long
as the specified condition is true.
<?php
$i = 0;
do {
$i++;
?>
<?php
?>
12
2.2.5 Functions in PHP
Functions are blocks of code that perform specific tasks and can be reused
throughout the program.
A function in PHP is defined using the function keyword followed by the function
name and parentheses containing any parameters.
<?php
function greet($name) {
greet("Alice");
?>
This example, the function greet takes a single parameter $name and outputs a
greeting message.
<?php
return $a + $b;
?>
The add function returns the sum of the two parameters, and the returned value is
stored in the variable $result.
13
2.2.6 File Handling in PHP
PHP provides built-in functions for creating, reading, writing, and manipulating files.
To open a file, the fopen function is used, which requires the file path and the mode
(e.g., r for read, w for write). The fread function reads content from the file.
<?php
fclose($file);
echo $content;
?>
Writing to FilesTo write to a file, use the fopen function with the mode set to w
or a, and then use fwrite.
<?php
fclose($file);
?>
OOP in PHP allows developers to create modular, reusable code by defining classes
and creating objects from those classes.
<?php
class Car {
14
public $make;
public $model;
$this->make = $make;
$this->model = $model;
$myCar->display();
?>
Inheritance: A class can inherit properties and methods from another class using the
extends keyword.
<?php
public $batteryCapacity;
parent::display();
?>
15
Polymorphism: Allows different classes to be treated as instances of the same
class through inheritance. Methods can be overridden to provide specific behavior in
subclasses.
Error handling in PHP allows for managing errors gracefully, ensuring the program
doesn't crash when unexpected conditions arise.
A try catch block is used to catch exceptions thrown during script execution.
<?php
try {
if (!file_exists("file.txt")) {
?>
<?php
try {
16
} catch (DatabaseException $e) {
} ?>
Initially developed by a Swedish company called MySQL AB, MySQL was later
acquired by Sun Microsystems in 2008 and is now owned by Oracle Corporation.
MySQL databases consist of tables, where data is organized in rows and columns.
Each row represents a data record, and each column represents an attribute or field
of the data. SQL commands are used to perform various tasks like querying data,
inserting new records, updating existing data, and deleting records.
MySQL's popularity stems from its features like performance, security, scalability,
and ease of use, making it a versatile choice for different applications:
17
Installing MySQL
Installation procedures for MySQL differ depending on the operating system used:
Windows Installation:
Linux Installation:
Use a package manager (like `apt` for Debian based systems or `yum` for
Red Hat based systems) to install the MySQL server.
Perform server configuration and secure the installation using the setup script
provided.
Verify the installation by connecting to the MySQL server using the command
line interface.
Data in MySQL is organized into databases, which consist of tables. Each table
contains rows (records) and columns (fields).
Creating a Database:
Creating a Table:
18
name VARCHAR(100) NOT NULL,
age INT,
enrollment_date DATE
);
The code above creates a table named `students` with columns for `id`, `name`,
`age`, and `enrollment_date`. The `id` column serves as the primary key, ensuring
that each record is unique, while the `AUTO_INCREMENT` attribute automatically
assigns a unique value to new entries.
Numeric Types: For storing numbers, including INT, FLOAT, DOUBLE, and
DECIMAL.
String Types: For text data, such as CHAR, VARCHAR, and TEXT.
Date and Time Types: For handling date and time values, including DATE,
TIME, and DATETIME.
Spatial Types: For geographical data, such as POINT and LINESTRING.
JSON: For storing JSON formatted data structures.
SQL commands are used to perform different operations on the data stored in a
MySQL database. Basic queries include selecting data, inserting new records,
updating existing data, and deleting records.
INSERT INTO students (name, age, enrollment_date) VALUES ('John Doe', 20,
'2024-01-15');
19
UPDATE students SET age = 21 WHERE name = 'John Doe';
Inner Join: Returns records that have matching values in both tables.
FROM students
Left (Outer) Join: Returns all records from the left table and matched records from
the right table.
FROM students
20
Foreign keys establish relationships between tables by linking the primary key of one
table to a foreign key in another, ensuring referential integrity
student_id INT,
course_id INT,
);
Optimizing a database ensures faster data access and efficient use of resources.
Indexes improve the speed of data retrieval by creating a reference for quickly
locating records.
Creating an Index:
Proper error handling ensures that issues in SQL operations do not cause
application failures and helps maintain data consistency.
21
SQL errors can be caught and managed using programming techniques, such as
exception handling in PHP.
try {
$conn->query($sql);
START TRANSACTION;
COMMIT;
Python is a high level, interpreted programming language known for its simplicity
and readability. It is widely used in web development, data analysis, artificial
intelligence, scientific computing, and scripting. Python's extensive standard library,
large community, and compatibility with other languages and platforms make it a
versatile language suitable for various tasks.
22
2.4.1 Introduction to Python
Python's design philosophy emphasizes code readability, making it a great choice for
beginners and experienced programmers alike. Python uses indentation to define
blocks of code, which enforces a consistent coding style.
Basic Syntax
Python's syntax is designed to be easy to understand and write. Here are some key
features:
Example:
if x > 0:
print("Positive number")
else:
print("Non-positive number")
Comments:
Python supports a variety of data types, and variables do not need explicit
declaration. Here are some common data types:
23
z = 3 + 4j # complex
2. Strings: A sequence of characters, defined by single, double, or triple quotes.
Variables in Python are dynamically typed, meaning you can change the type of a
variable by assigning a new value to it.
Control structures allow for the execution of specific blocks of code based on
conditions or loops. They are essential for creating dynamic programs.
x = 10
if x > 0:
print("Positive number")
if x > 0:
print("Positive number")
24
else:
print("Non-positive number")
if x > 0:
print("Positive")
elif x < 0:
print("Negative")
else:
print("Zero")
Loops in Python enable the execution of a code block multiple times. The two main
types are `while` loops and `for` loops.
count = 0
print(count)
count += 1
print(fruit)
Break and Continue: `break` exits the loop, and `continue` skips to the next
iteration.
if num == 5:
break
25
if num % 2 == 0:
continue
print(num)
Functions are reusable blocks of code that perform a specific task. They help in
organizing code and improving readability.
Functions in Python are defined using the `def` keyword, followed by the function
name, parentheses, and a colon. Parameters can be passed to functions to
customize their behavior.
Defining a Function:
def greet(name):
print(f"Hello, {name}!")
Calling a Function:
greet("Alice")
def greet(name="Guest"):
print(f"Hello, {name}!")
Functions can return values using the `return` statement. This allows the function's
result to be used elsewhere in the program.
Returning a Value:
return a + b
26
result = add(5, 3) # result is 8
def get_user_info():
name = "John"
age = 30
File handling in Python allows programs to read from and write to files, which is
essential for data storage and manipulation.
Opening File:
Python provides built-in functions for file handling, including `open()`, which can open
a file in different modes such as read (`r`).
Reading a File:
content = file.read()
print(content)
file.close()
Using `with` Statement: Ensures that the file is properly closed after its suite finishes.
content = file.read()
print(content)
Writing to Files
Writing to a file involves using the `write()` method. Opening a file in write mode (`w`)
will overwrite the file, while append mode (`a`) adds to the existing content.
27
Writing to a File:
file.write("Hello, World!"
Appending to a File:
file.write("\nNew Line")
OOP is a programming paradigm based on the concept of "objects" that contain data
and methods. Python supports OOP, making it easier to structure programs using
real-world concepts.
Classes define the blueprint for objects, and objects are instances of classes.
Defining a Class:
class Car:
self.make = make
self.model = model
def display_info(self):
Creating an Object:
my_car.display_info()
Inheritance allows one class to inherit attributes and methods from another,
promoting code reuse.
28
Inheritance Example:
class ElectricCar(Car):
super().__init__(make, model)
self.battery_size = battery_size
Polymorphism Example:
class Animal:
def speak(self):
pass
class Dog(Animal):
def speak(self):
return "Woof!"
class Cat(Animal):
def speak(self):
return "Meow!"
print(animal.speak())
Error handling in Python allows programs to deal with runtime errors gracefully,
without crashing. The use of `try`, `except`, and other mechanisms helps manage
exceptions.
Try-Except Blocks
The `try-except` block lets you catch exceptions and handle them appropriately.
29
CHAPTER THREE
1. Organizational publicity
2. Reduces waste of resources, time and strength.
3. Remote booking
4. Provide up-to-date information about the organizations
5. Making order of food from the Hotel restaurant (for those who are already in
hotel)
6. Manage booking, staffing, rooms, and guest/visitor.
30
3.4.1 Visitor Home Page
Home page is the main landing page for guests, providing a user-friendly interface to
explore the hotel’s facilities, browse available rooms, access detailed descriptions of
services, and make bookings. This page also offers information about special offers,
events, and additional services, making it an engaging entry point for potential
guests.
31
3.4.2 Administrator Dashboard
This is the central control hub for the hotel management. It enables administrators to
oversee all aspects of hotel operations, including managing bookings, tracking
occupancy rates, monitoring financial performance, and generating detailed reports.
32
3.4.3 Visitor Booking Panel
For guests, Visitors Booking Panel allows easy booking submissions, where they
can select room types, specify dates, and provide necessary details.
33
3.4.4 Approve Booking Managenent
34
3.4.5 Check In and Out Guest Dashboard
Guests also have access to a personalized data, where they can manage their
bookings, view their reservation history, make payments, receive notifications, and
access personalized offers.
35
3.4.6 Staff Management
Staff operations are efficiently managed through the staff Management module. This
section oversees employee scheduling, shift allocations, performance tracking, and
permissions management, helping the hotel to maintain a high standard of service
while managing workforce needs.
36
3.4.7 Room Management
The Room Dashboard is an administrative tool for monitoring and updating room
status, adjusting pricing, scheduling maintenance, and viewing detailed room
information, all of which is to ensure the hotel rooms are managed effectively and
efficiently.
37
3.4.8 Add Administrator Panel
The panel that plays a crucial role in system security and user management. It
allows authorized personnel to add new administrators, assign roles, manage
permissions, and control access to sensitive features, ensuring only authorized staff
handle critical operations.
38
3.4.9 Restaurant Menu
The Restaurants component supports the dining experience within the hotel. It
allows guests to view the restaurant menu, make table reservations, place orders,
and review billing details. Administrators can manage the menu, handle reservations,
track orders, and manage special offers, creating a seamless dining experience for
visitors.
39
3.5 Problems Encountered
ii. No free internet access in the center, which limit my research ability.
40
CHAPTER FOUR
4.1 Summary
This report contains the critical knowledge, skills, and experiences I gained during
my six months Industrial Training at BRIATEK Computers Nigeria Limited. During this
period, I applied these skills to design a Hotel Management System using HTML,
CSS, JavaScript, PHP, MySQL, and Python. When implemented, this system will
offer a fast, cost effective, accurate, efficient, and reliable means of Hotel
management for users the state, Nigeria and beyond. It is user friendly, allowing
easy access from any part of the world. The system can maintain user records, verify
ticket numbers by detecting invalid inputs, and provide error messages to notify
users. Additionally, records can be edited or deleted as necessary. This project is
anticipated to play a crucial role in enhancing the operational efficiency and
effectiveness of the Hotel system.
4.2 Conclusion
The SIWES training provided me with practical experience in applying the theoretical
knowledge gained at my institution. It also allowed me to use devices and tools
available at my training center, practical workplace reporting, and adapt to potential
post-graduation work environments. Through SIWES, I successfully met the
program's aims and objectives.
41
4.3 Recommendations
5. Students should avoid prioritizing money over work and experience and
should develop a good attitude, and good work ethic and be a good
ambassador of the university.
42
4.4 References
Andy, H. (2014). HTML 5 and CSS3 All-in-One for Dummies, 3rd Edition, Wiley for
Dummies, pp. 120-161.
Ben, W., and Grant, T. (2013). Optimal Inventory Management Strategy of
Companies, Delhi, India.
Lee, Perlitz (2013). Optimal Inventory Policy, Australia: McGraw-Hill.
Michele, D., and John, P. (2014). Learning PHP and MySQL, O’Reilly Publishers.
The Students Industrial Work Experience Scheme (SIWES) Guideline (2012).
Tutorialspoint (http://www.tutorialspoint.com).
Wodi, S. W., and Dokubo, A. (2009). Appraisal of Student Industrial Work Experience
Scheme (SIWES) in Tertiary Institutions, European Journal of Social Science,
7(3), 42-51.
w 3schools (2016). Offline by Tricks University, at (www.w3school.com ).
43