0% found this document useful (0 votes)
11 views37 pages

Motta

The document outlines an internship report detailing the author's experience at MindForce Technology Pvt. Ltd. as a Web Developer. It includes sections on company information, the internship process, technologies used, and the development of a personal portfolio website, highlighting skills learned and the overall impact on the author's professional growth. The report emphasizes practical exposure to web development, teamwork, and the application of academic knowledge in a real-world setting.

Uploaded by

santhoshas643712
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views37 pages

Motta

The document outlines an internship report detailing the author's experience at MindForce Technology Pvt. Ltd. as a Web Developer. It includes sections on company information, the internship process, technologies used, and the development of a personal portfolio website, highlighting skills learned and the overall impact on the author's professional growth. The report emphasizes practical exposure to web development, teamwork, and the application of academic knowledge in a real-world setting.

Uploaded by

santhoshas643712
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

TABLE OF CONTENTS

[Link]. DESCRIPTION PAGE NO.

1. Table of Contents

2. Acknowledgement

3. Internship Certificate

4. Company information

5. Introduction of the Report

6. Software requirements specifications

7. Technology

8. Coding

9. Screenshots

10. Skills Learned

11. Conclusion

12. Bibliography

1
2. ACKNOWLEDGEMENT

I would like to express my sincere gratitude to MindForce Technology Pvt Ltd. for providing me with the
opportunity to complete my internship as a Web Developer.

The experience has been incredibly valuable and has helped me gain practical knowledge in the field of
web design and development.

I am especially thankful to my internship for his constant guidance, encouragement, and constructive
feedback throughout my training period. His mentorship has helped me improve my technical as well as
problem-solving skills.

I also extend my heartfelt thanks to all the team members at MindForce Technology for their support and
cooperation during the internship. Working with such a talented team gave me insights into real-world
project development and teamwork.

I am deeply grateful to my college faculty and department for arranging this internship and for their
continuous support throughout my academic journey.

Finally, I would like to thank my family and friends for their motivation and encouragement, which helped
me successfully complete this internship and report.

Sharan S
MCA

3. INTERNSHIP CERTIFICATE
3

4. COMPANY INFORMATION
Company Name: MindForce Technology Pvt. Ltd.

Company Motto: Serve | Inspire | Innovate

Address: No. 959/21A, Velachery Main Road, Camproad Junction, Selaiyur, Chennai – 600 073, Tamil
Nadu, India

Website: [Link]

Email: contact@[Link]

Type of Organization: Private Limited IT Company

Managing Director: Mr. Paranidharan Kannan

About the Company:

MindForce Technology Pvt. Ltd. is an information technology company that provides innovative software
and web solutions to clients across various industries. The company focuses on delivering high-quality IT
services, including web development, software development, digital transformation, and real-time business
solutions.

The organization emphasizes learning, creativity, and innovation, enabling interns and employees to gain
practical exposure to modern tools, technologies, and methodologies in the IT sector.

4
5. INTERNSHIP DESCRIPTION

My internship at MindForce Technology Pvt. Ltd., Chennai, was carried out from September 8, 2025 to
September 24, 2025 as part of my academic program for the MCA Department of Computer Science,
Bharath Institute of Higher Education & Research. The internship was focused on Web Development and
aimed to provide real-time exposure to professional software development environments.

During the internship, I was given the opportunity to work under the guidance of experienced developers
and mentors who helped me understand the complete process of web application design and development. I
actively participated in both front-end and back-end development tasks, including designing user interfaces,
writing clean and efficient code, and performing testing and debugging.

The main objective of my internship was to gain practical experience in creating dynamic and responsive
websites using technologies like HTML, CSS, JavaScript, PHP, and MySQL. I also learned about project
workflows, version control (GitHub), and web hosting techniques.

Throughout the internship, I was involved in developing a personal portfolio website, which helped me
apply my technical knowledge to a real-world project. This experience improved my problem-solving skills,
enhanced my coding efficiency, and gave me valuable insights into teamwork, project management, and
client communication.

Overall, the internship at MindForce Technology Pvt. Ltd. provided me with essential professional skills,
strengthened my technical foundation, and gave me confidence to pursue a career in web development.

6. INTRODUCTION
The internship program is an essential part of the academic curriculum that bridges the gap between
theoretical learning and practical application. It provides students with the opportunity to gain hands-on
experience in a real work environment and understand the functioning of the industry.

As part of my Master of Computer Applications (MCA) program, I undertook my internship at MindForce


Technology Pvt. Ltd., Chennai. The internship focused on Web Development, where I was trained to
develop and manage web applications using various modern technologies and tools.

This internship helped me enhance my technical knowledge, improve my problem-solving skills, and gain
valuable professional experience that will support my future career in the IT field.

Development Process:

I followed a systematic web development process that covered all key stages of building a functional and
user-friendly website. The development process was based on the Software Development Life Cycle
(SDLC) and Agile methodology, which ensured continuous improvement and collaboration.

1. Requirement Analysis
The first stage involved understanding the client’s needs and project goals. I discussed with the team to
gather information about the website’s purpose, target audience, design preferences, and key functionalities
such as user login, content display, and contact forms.

2. Planning and Design


Once the requirements were clear, I created a basic wireframe and layout design for the website. Tools like
Figma and Canva were used to visualize the structure. The design focused on user-friendliness, easy
navigation, and responsive layouts suitable for different devices.

3. Front-End Development
In this phase, I developed the user interface using HTML, CSS, and JavaScript. I ensured the design was
responsive and attractive by applying CSS styling and Bootstrap frameworks. JavaScript was used to add
interactivity and dynamic features to the web pages.

4. Back-End Development
For the back-end, I used PHP as the server-side scripting language and MySQL as the database. This part
involved connecting the website to the database, managing data storage, and enabling user authentication
and data retrieval functions.

5. Integration and Testing


After both front-end and back-end parts were completed, I integrated all components and tested the system
for functionality, performance, and security. Testing was performed to identify and fix bugs to ensure
smooth operation.
6
6. Deployment and Maintenance
The final step was deploying the website on a live server. I learned how to host the website using cPanel
and perform maintenance tasks, such as updates and bug fixes, to keep the site running effectively.
The primary objectives of this internship were to:
• To apply academic knowledge in a real-world work environment and understand how theoretical
concepts are implemented in practice.
• To learn and develop web applications using technologies such as HTML, CSS, JavaScript, PHP, and
MySQL.
• To understand the process of web design and development, including planning, coding, testing, and
deployment.
• To gain familiarity with modern web tools and frameworks used in the IT industry.
• To improve problem-solving and analytical skills through real-time project tasks and challenges.
• To develop teamwork, communication, and time management skills by collaborating with
professionals in a corporate setting.
• To build a professional portfolio project demonstrating the skills learned during the internship.

Project Overview:

During my internship I worked on a web development project that aimed to design and develop a
responsive and interactive website. The project allowed me to apply my technical knowledge and improve
my understanding of both front-end and back-end development processes.

The main objective of the project was to create a user-friendly website that provides smooth navigation,
appealing design, and efficient data management. The project also helped me learn how to integrate
databases, handle user input, and deploy the website to a live environment.

Throughout the project, I gained valuable experience in using web technologies, understanding client
requirements, implementing responsive design, and testing the final product to ensure it met performance
and usability standards.

Front-End Development:

The front-end of the project was developed using:


• HTML (HyperText Markup Language): For creating the structure and layout of the web pages.
• CSS (Cascading Style Sheets): For styling and improving the visual appearance of the website with
colors, fonts, and layouts.
• JavaScript: For adding interactivity such as form validation, animations, and dynamic content.
• Bootstrap Framework: For creating a responsive and mobile-friendly design.

7
Back-End Development:

The back-end of the project was developed using:


• PHP (Hypertext Preprocessor): To handle server-side scripting, data processing, and user interaction.
• MySQL Database: To store and manage user data such as contact details and form submissions.
• XAMPP Server: As a local development environment for testing and running the project before
deployment.

7. Software Requirements Specification (SRS)


7.1 Introduction
The SRS document describes the complete functionality and performance of the Personal Portfolio Website
developed during the internship. It defines the purpose, scope, and requirements of the system.
The main objective of the system is to provide an easy-to-use and responsive website that allows users to
showcase their skills and achievements to potential employers or clients.

7.2 Overall Description

The system is a web-based application consisting of two main modules:


• Front-End (User View): Displays personal details, skills, and projects to visitors.
• Back-End (Admin Panel): Allows the admin to update information dynamically through a secure
login interface.
The system is designed to be responsive, user-friendly, and secure. It stores all data in a MySQL database
and is built using PHP as the backend language.

7.3 Functional Requirements

1. Login Functionality: Admin can log in using valid credentials.


2. Profile Management: Admin can update personal details like name, education, and skills.
3. Project Management: Admin can add, edit, or delete projects with images and descriptions.
4. Contact Form: Visitors can send messages to the admin.
5. Responsive Design: Website adjusts layout for desktop, tablet, and mobile.

7.4 Non-Functional Requirements

1. Performance: The website should load within 3 seconds.


2. Usability: Interface must be simple and visually appealing.
3. Security: Passwords must be encrypted, and admin area protected.
4. Scalability: The website can be expanded with future modules.
5. Reliability: The system must run smoothly without crashes.

use Cases
Use CaseUse Case NameDescription
ID Admin Login Admin logs into the system using valid
UC1 Manage Profilecredentials
UC2 Manage Admin updates personal and skill details
UC3 Projects Admin adds, edits, or deletes projects
UC4 View Portfolio Visitors view the personal portfolio
UC5 Contact Form Visitors send messages to the admin

Technology Used

Category Tools / Technologies


Front-End HTML5, CSS3, JavaScript,
Back-End Bootstrap
Database PHP
IDE MySQL

Server Visual Studio Code


Apache (XAMPP)
Version Control
GitHub

7.7 Module Descriptions

1. Login Module: Manages authentication of admin.


2. Profile Module: Allows editing of name, skills, and education.
3. Project Module: Handles project management.
4. Contact Module: Enables communication through form submission.
5. UI Module: Displays portfolio content to visitors.

10

7.8 Architecture Diagram


7.9 Glossary

TermDefinition
HTMHypertext Markup
L Language
CSS Cascading Style Sheets
PHP Hypertext Preprocessor
SQL Structured Query Language
UI User Interface
UX User Experience

11
8. Technology Used
During my internship I worked with a combination of front-end and back-end technologies to develop a
dynamic and responsive web application. These technologies helped me understand how to design, code,
test, and deploy a complete website efficiently.

1. Front-End Technologies

• HTML (HyperText Markup Language):


Used to create the structure of the web pages and define the content layout.
• CSS (Cascading Style Sheets):
Applied for styling the website, including colors, fonts, margins, and layouts to make the interface
visually appealing.
• JavaScript:
Implemented to add interactivity and dynamic behavior to the web pages, such as form validation
and animations.
• Bootstrap Framework:
Utilized to build a mobile-friendly and responsive design easily with prebuilt components and grid
systems.

2. Back-End Technologies

• PHP (Hypertext Preprocessor):


Used as the server-side scripting language to handle logic, form submissions, and communication
with the database.
• MySQL Database:
Used to store, manage, and retrieve data efficiently for dynamic content management on the
website.
• XAMPP Server:
A local server environment used to test and run the project before final deployment. It includes
Apache, MySQL, PHP, and phpMyAdmin.

3. Additional Tools and Software

• Visual Studio Code: Used as the main code editor for writing and managing the source code.
• GitHub: Used for version control and maintaining the project repository.
• Figma/Canva: Used for creating wireframes and designing visual layouts before implementation.
• Browser Developer Tools: Used for debugging, inspecting elements, and testing responsiveness.

12
Architecture diagram:

13
9. CODING

[Link]:
<?php require_once('../[Link]') ?>
<!DOCTYPE html>
<html lang="en" class="" style="height: auto;">
<?php require_once('inc/[Link]')?>
<body class="hold-transition login-page bg-black">
<script> start_loader()
</script>
<h2 class="text-center mb-4 pb-3"><?php echo $_settings->info('name') ?></h2>
<div class="login-box">
<!-- /.login-logo -->
<div class="card card-outline card-primary">
<div class="card-body">
<p class="login-box-msg text-dark">Sign in to start your session</p>
<form id="login-frm" action="" method="post">
<div class="input-group mb-3">
<input type="text" class="form-control" name="username" placeholder="Username" autofocus>
<div class="input-group-append">
<div class="input-group-text">
<span class="fas fa-user"></span>
</div>
</div>
</div>
<div class="input-group mb-3">
<input type="password" class="form-control" name="password" placeholder="Password">
<div class="input-group-append">
<div class="input-group-text">
<span class="fas fa-lock"></span>
</div>
</div>
</div>
<div class="row justify-conten-center">
<!-- /.col -->
<button type="submit" class="btn btn-primary btn-block">Sign In</button> <!-- /.col
-->
</div></form></div><!-- /.card-body --></div>
<script src="plugins/jquery/[Link]"></script>
<script src="dist/js/[Link]"></script>

14
<script>
$(document).ready(function() { end_loader(); })
</script>
</body>
</html>

[Link]
<?php require_once('../[Link]'); ?>
<!DOCTYPE html>
<html lang="en" class="" style="height: auto;">
<?php require_once('inc/[Link]') ?>
<body class="sidebar-mini layout-fixed control-sidebar-slide-open layout-navbar-fixed sidebarminimd
sidebar-mini-xs" data-new-gr-c-s-check-loaded="14.991.0" data-gr-ext-installed="" style="height:
auto;"> <div class="wrapper">
<?php require_once('inc/[Link]') ?>
<?php require_once('inc/[Link]') ?>

<?php $page = isset($_GET['page']) ? $_GET['page'] : 'home'; ?>


<!-- Content Wrapper. Contains page content -->
<div class="content-wrapper pt-3" style="min-height: 567.854px;">

<!-- Main content -->


<section class="content text-dark">
<div class="container-fluid">
<?php
if(!file_exists($page.".php") && !is_dir($page)){ include
'[Link]';
}else{ if(is_dir($page)) include
$page.'/[Link]';
else include
$page.'.php';
17
}
?>
</div>
</section>
<!-- /.content -->
<div class="modal fade" id="confirm_modal" role='dialog'>
<div class="modal-dialog modal-md modal-dialog-centered" role="document"> <div class="modal-
content">
<div class="modal-header">
<h5 class="modal-title">Confirmation</h5>

15
</div>
<div class="modal-body">
<div id="delete_content"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id='confirm' onclick="">Continue</button> <button
type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="uni_modal" role='dialog'>

<div class="modal-dialog modal-md modal-dialog-centered" role="document">


<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title"></h5>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id='submit' onclick="$('#uni_modal
form').submit()">Save</button>
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="uni_modal_right" role='dialog'>
<div class="modal-dialog modal-full-height modal-md" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title"></h5>
18
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span class="fa
fa-arrow-right"></span>
</button>
</div>
<div class="modal-body">
</div>
</div>
</div>
</div>
16
<div class="modal fade" id="viewer_modal" role='dialog'>
<div class="modal-dialog modal-md" role="document">
<div class="modal-content">
<button type="button" class="btn-close" data-dismiss="modal"><span class="fa
fatimes"></span></button>
<img src="" alt="">
</div>
</div>
</div>
</div>
<!-- /.content-wrapper -->
<?php require_once('inc/[Link]') ?>
<!--/.Budjet -->
<?php if($_settings->chk_flashdata('success')): ?>
<script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success') </script>
<?php endif;?>
<div class="card card-outline card-primary">

<div class="card-header">
<h3 class="card-title">Buget Management</h3>
<div class="card-tools">
<a href="javascript:void(0)" id="manage_budget" class="btn btn-flat btn-sm btnprimary"><span
class="fas fa-plus"></span> Add New</a>
</div>
</div>
<div class="card-body">
<div class="container-fluid">
<div class="container-fluid">
<table class="table table-bordered table-stripped">
<colgroup>
<col width="5%">
<col width="15%">
19
<col width="20%">
<col width="15%">
<col width="30%">
<col width="15%">
</colgroup>
<thead>
<tr>
<th>#</th>
<th>Date Created</th>
17
<th>Category</th>
<th>Amount</th>
<th>Remarks</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$i = 1;
$qry = $conn->query("SELECT r.*,[Link],[Link] from `running_balance` r inner join
`categories` c on r.category_id = [Link] where [Link]=1 and r.balance_type = 1 order by
unix_timestamp(r.date_created) desc"); while($row = $qry->fetch_assoc()): foreach($row as $k=>
$v){ $row[$k] = trim(stripslashes($v));
}
$row['remarks'] = strip_tags(stripslashes(html_entity_decode($row['remarks']))); ?> <tr>
<td class="text-center"><?php echo $i++; ?></td>
<td><?php echo date("Y-m-d H:i",strtotime($row['date_created'])) ?></td> <td><?php
echo $row['category'] ?></td>
<td ><p class="m-0 text-right"><?php echo number_format($row['amount']) ?></p></td>
<td ><p class="m-0 truncate"><?php echo ($row['remarks']) ?></p></td> <td align="center">
<button type="button" class="btn btn-flat btn-default btn-sm dropdown-toggle dropdown-icon" data-
toggle="dropdown">

Action
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu" role="menu">
20
<a class="dropdown-item manage_budget" href="javascript:void(0)" dataid="<?php echo $row['id']
?>"><span class="fa fa-edit text-primary"></span> Edit</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item delete_data" href="javascript:void(0)" dataid="<?php echo $row['id'] ?>" data-
category_id="<?php echo $row['category_id'] ?>"><span class="fa fa-trash text-danger"></span>
Delete</a>
</div>
</td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
</div>
</div>
</div>
18
</div>
<script>
$(document).ready(function(){ $('#manage_budget').click(function(){
uni_modal("<i class='fa fa-plus'></i> Add New Budget",'budget/manage_budget.php')
})
$('.manage_budget').click(function(){ uni_modal("<i
class='fa fa-edit'></i> Update
Budget",'budget/manage_budget.php?id='+$(this).attr('data-id'))
})
$('.delete_data').click(function(){ _conf("Are you sure to delete this budget
permanently?","delete_budget",[$(this).attr('dataid'),$(this).attr('data-category_id')]) })
$('#uni_modal').on('[Link]',function(){
$
('.summernote').summernote({ height:
200, toolbar: [
[ 'font', [ 'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'clear'] ], [ 'fontsize',
[ 'fontsize' ] ],
[ 'para', [ 'ol', 'ul' ] ],
[ 'view', [ 'undo', 'redo'] ]
]
})
})
$('.table').dataTable({ columnDefs: [
21
{ orderable: false, targets: 5 }
],
order: [[0, 'asc']]
});
})

function delete_budget($id,$category_id){
start_loader(); $.ajax({ url:_base_url_+"classes/[Link]?
f=delete_budget", method:"POST", data:{id: $id,category_id:
$category_id}, dataType:"json", error:err=>{ [Link](err)
alert_toast("An error occured.",'error'); end_loader();
},
success:function(resp){ if(typeof resp== 'object' && [Link] ==
'success'){ [Link]();
}else{ alert_toast("An error
occured.",'error');
end_loader();
}
}
})
}
</script>
19
<!-- /.Expense -->
<?php if($_settings->chk_flashdata('success')): ?>
<script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success') </script>
<?php endif;?>
<div class="card card-outline card-primary">
<div class="card-header">
<h3 class="card-title">Expense Management</h3>
<div class="card-tools">
<a href="javascript:void(0)" id="manage_expense" class="btn btn-flat btn-sm btnprimary"><span
class="fas fa-plus"></span> Add New</a>
</div>
</div>
22
<div class="card-body">
<div class="container-fluid">
<div class="container-fluid">
<table class="table table-bordered table-stripped">
<colgroup>
<col width="5%">
<col width="15%">
<col width="20%">
<col width="15%">
<col width="30%">
<col width="15%">
</colgroup>
<thead>
<tr>
<th>#</th>
<th>Date Created</th>
<th>Category</th>
<th>Amount</th>
<th>Remarks</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$i = 1;
$qry = $conn->query("SELECT r.*,[Link],[Link] from `running_balance` r
inner join `categories` c on r.category_id = [Link] where [Link]= 1 and r.balance_type = 2 order by
unix_timestamp(r.date_created) desc"); while($row = $qry->fetch_assoc()): foreach($row as
$k=> $v){ $row[$k] =
trim(stripslashes($v)); }
20
$row['remarks'] = strip_tags(stripslashes(html_entity_decode($row['remarks']))); ?> <tr>
<td class="text-center"><?php echo $i++; ?></td>
<td><?php echo date("Y-m-d H:i",strtotime($row['date_created'])) ?></td>
<td><?php echo $row['category'] ?></td>
<td ><p class="m-0 text-right"><?php echo number_format($row['amount']) ?></p></td>
<td ><p class="m-0 truncate"><?php echo ($row['remarks']) ?></p></td> <td
align="center"> 23
<button type="button" class="btn btn-flat btn-default btn-sm dropdown-toggle dropdown-icon" data-
toggle="dropdown">
Action
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu" role="menu">
<a class="dropdown-item manage_expense" href="javascript:void(0)" dataid="<?php echo $row['id']
?>"><span class="fa fa-edit text-primary"></span> Edit</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item delete_data" href="javascript:void(0)" dataid="<?php echo $row['id'] ?>" data-
category_id="<?php echo $row['category_id'] ?>"><span class="fa fa-trash text-danger"></span>
Delete</a>
</div>
</td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
</div>
</div>
</div> </div>

<script>
$(document).ready(function(){ $('#manage_expense').click(function(){
uni_modal("<i class='fa fa-plus'></i> Add New Expense",'expense/manage_expense.php')
})
$('.manage_expense').click(function(){ uni_modal("<i
class='fa fa-edit'></i> Update
Expense",'expense/manage_expense.php?id='+$(this).attr('data-id'))
})
$('.delete_data').click(function()
{ _conf("Are you sure to delete this expense
permanently?","delete_expense",[$(this).attr('dataid'),$(this).attr('data-category_id')]) })
$('#uni_modal').on('[Link]',function(){
$('.summernote').summernote({
21
height: 200, toolbar: [
[ 'font', [ 'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'clear'] ], [ 'fontsize',
[ 'fontsize' ] ],
[ 'para', [ 'ol', 'ul' ] ],
24
[ 'view', [ 'undo', 'redo'] ]
]
})
})
$('.table').dataTable({ columnDefs: [
{ orderable: false, targets: 5 }
],
order: [[0, 'asc']]
});
})
function delete_expense($id,$category_id){
start_loader(); $.ajax({ url:_base_url_+"classes/[Link]?
f=delete_expense", method:"POST", data:{id: $id,category_id:
$category_id}, dataType:"json", error:err=>{ [Link](err)
alert_toast("An error occured.",'error'); end_loader();
},
success:function(resp){
if(typeof resp== 'object' && [Link] == 'success'){ [Link]();
}else{
alert_toast("An error occured.",'error'); end_loader();
}
}
})
}
</script>
<!-- /.Maintance -->
<?php if($_settings->chk_flashdata('success')): ?>

<script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success')
</script>
<?php endif;?>
<div class="card card-outline card-primary">
<div class="card-header">
25
<h3 class="card-title">List of Packages</h3>
22
<div class="card-tools">
<a href="?page=packages/manage" class="btn btn-flat btn-primary"><span class="fas faplus"></span>
Create New</a>
</div>
</div>
<div class="card-body">
<div class="container-fluid">
<div class="container-fluid">
<table class="table table-bordered table-stripped">
<colgroup>
<col width="5%">
<col width="15%">
<col width="20%">
<col width="35%">
<col width="10%">
<col width="15%">
</colgroup>
<thead>
<tr>
<th>#</th>
<th>Date Created</th>
<th>Package</th>
<th>Description</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$i = 1;
$qry = $conn->query("SELECT * from `packages` order by date(date_created) desc
");
while($row = $qry->fetch_assoc()):
$row['description'] =
strip_tags(stripslashes(html_entity_decode($row['description']))); ?>
<tr>
<td class="text-center"><?php echo $i++; ?></td>
<td><?php echo date("Y-m-d H:i",strtotime($row['date_created'])) ?></td>
<td><?php echo $row['title'] ?></td>
<td ><p class="truncate-1 m-0"><?php echo $row['description'] ?></p></td> 26
<td class="text-center">

<?php if($row['status'] == 1): ?>


<span class="badge badge-success">Active</span>
23
<?php else: ?>
<span class="badge badge-danger">Inactive</span>
<?php endif; ?>
</td>
<td align="center">
<button type="button" class="btn btn-flat btn-default btn-sm dropdown-toggle dropdown-icon" data-
toggle="dropdown">
Action
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu" role="menu">
<a class="dropdown-item" href="?page=packages/manage&id=<?php echo
$row['id'] ?>"><span class="fa fa-edit text-primary"></span> Edit</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item delete_data" href="javascript:void(0)" dataid="<?php echo $row['id'] ?>"><span
class="fa fa-trash text-danger"></span> Delete</a> </div>
</td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
</div>
</div>
</div>
</div>
<script>
$(document).ready(function(){
$('.delete_data').click(function(){
_conf("Are you sure to delete this package permanently?","delete_package",[$(this).attr('dataid')]) }) $
('.table').dataTable();
})
function delete_package($id){ start_loader();
$.ajax({ url:_base_url_+"classes/[Link]?f=delete_package",
method:"POST",
27 data:{id: $id}, dataType:"json",
error:err=>{ [Link](err) alert_toast("An error
occured.",'error'); end_loader();
},
success:function(resp){ if(typeof resp== 'object' && [Link] ==
'success'){ [Link]();
}else{ alert_toast("An error
occured.",'error'); end_loader();
}
}
})
}
24
</script>
<!-- /.Reports -->
<style> table td,table th{
padding: 3px !important;
}
</style>
<?php
$date_start = isset($_GET['date_start']) ? $_GET['date_start'] : date("Y-m-d",strtotime(date("Y-md")." -7
days")) ;
$date_end = isset($_GET['date_end']) ? $_GET['date_end'] : date("Y-m-d") ; ?>
<div class="card card-primary card-outline">
<div class="card-header">
<h5 class="card-title">Budget Report</h5>
</div>
<div class="card-body">
<form id="filter-form">
<div class="row align-items-end">
<div class="form-group col-md-3">
<label for="date_start">Date Start</label>
<input type="date" class="form-control form-control-sm" name="date_start" value="<?php
echo date("Y-m-d",strtotime($date_start)) ?>">
</div>
<div class="form-group col-md-3">
28
<label for="date_start">Date End</label>
<input type="date" class="form-control form-control-sm" name="date_end" value="<?php echo
date("Y-m-d",strtotime($date_end)) ?>">
</div>
<div class="form-group col-md-1">
<button class="btn btn-flat btn-block btn-primary btn-sm"><i class="fa fa-filter"></i> Filter</button>
</div>
<div class="form-group col-md-1">
<button class="btn btn-flat btn-block btn-success btn-sm" type="button" id="printBTN"><i class="fa
fa-print"></i> Print</button>
</div>
</div>
</form>
<hr>
<div id="printable">
<div>
<h4 class="text-center m-0"><?php echo $_settings->info('name') ?></h4>
<h3 class="text-center m-0"><b>Budget Report</b></h3>
<hr style="width:15%">
<p class="text-center m-0">Date Between <b><?php echo date("M d,
25
Y",strtotime($date_start)) ?> and <?php echo date("M d, Y",strtotime($date_end)) ?></b></p> <hr>
</div>
<table class="table table-bordered">
<colgroup>
<col width="5%">
<col width="20%">
<col width="25%">
<col width="15%">
<col width="35%">
</colgroup>
<thead>
<tr class="bg-gray-light">
<th class="text-center">#</th>
<th>Entry DateTime</th>
<th>Category</th>
<th>Amount</th>
<th>Remarks</th>
</tr>
</thead>
<tbody>
29
<?php
$i = 1;
$total = 0;
$qry = $conn->query("SELECT r.*,[Link],[Link] from `running_balance` r inner join
`categories` c on r.category_id = [Link] where [Link]=1 and r.balance_type = 1 and date(r.date_created)
between '{$date_start}' and '{$date_end}' order by unix_timestamp(r.date_created) asc"); while($row
= $qry->fetch_assoc()):
$row['remarks'] = (stripslashes(html_entity_decode($row['remarks']))); $total += $row['amount'];
?>
<tr>
<td class="text-center"><?php echo $i++ ?></td>
<td><?php echo date("M d, Y",strtotime($row['date_created'])) ?></td>
<td><?php echo $row['category'] ?></td>
<td class="text-right"><?php echo number_format($row['amount']) ?></td> <td><div><?php echo
$row['remarks'] ?></div></td>
</tr>
<?php endwhile; ?>
<?php if($qry->num_rows <= 0): ?>
<tr>
<td class="text-center" colspan="5">No Data...</td>
</tr>
<?php endif; ?>
</tbody>
26
<tfoot>
<tr>
<td class="text-right px-3" colspan="3"><b>Total</b></td>
<td class="text-right"><b><?php echo number_format($total) ?></b></td> <td class="bg-gray"></td>
</tr>
</tfoot>
</table> </div>
</div>
</div>
<script>
$(function(){
$('#filter-form').submit(function(e){
[Link]() 30 [Link]
=
"./?page=reports/budget&date_start="+$('[name="date_start"]').val()+"&date_end="+$('[name="dat
e_end"]').val()
})
$('#printBTN').click(function(){ var rep = $('#printable').clone(); var ns = $('head').clone();
start_loader() [Link](ns) var nw = [Link]('','_blank','width=900,height=600')
[Link]([Link]()) [Link]() setTimeout(function(){ [Link]()
setTimeout(function(){ [Link]() end_loader()
},500)
},500)
})
})
</script>
<--/. System info -->
<?php if($_settings->chk_flashdata('success')): ?> <script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success')
</script>
<?php endif;?> <style>
img#cimg{ height: 15vh;
width: 15vh; object-fit: cover;
border-radius:
100% 100%;
}
img#cimg2{ height:
50vh; width: 100%;
object-fit: contain;
/* border-radius: 100% 100%; */
31
}
</style>
<div class="col-lg-12">
<div class="card card-outline card-primary">
27
<div class="card-header">
<h5 class="card-title">System Information</h5>
<!-- <div class="card-tools">
<a class="btn btn-block btn-sm btn-default btn-flat border-primary new_department"
href="javascript:void(0)"><i class="fa fa-plus"></i> Add New</a>
</div> -->
</div>
<div class="card-body">
<form action="" id="system-frm">
<div id="msg" class="form-group"></div>
<div class="form-group">
<label for="name" class="control-label">System Name</label>
<input type="text" class="form-control form-control-sm" name="name" id="name" value="<?php echo
$_settings->info('name') ?>">
</div>
<div class="form-group">
<label for="short_name" class="control-label">System Short Name</label> <input type="text"
class="form-control form-control-sm" name="short_name"
id="short_name" value="<?php echo $_settings->info('short_name') ?>"> </div>
<div class="form-group">
<label for="" class="control-label">System Logo</label>
<div class="custom-file">
<input type="file" class="custom-file-input rounded-circle" id="customFile" name="img"
onchange="displayImg(this,$(this))">
<label class="custom-file-label" for="customFile">Choose file</label> </div>
</div>
<div class="form-group d-flex justify-content-center">
<img src="<?php echo validate_image($_settings->info('logo')) ?>" alt="" id="cimg" class="img-fluid
img-thumbnail">
</div>
</form>
</div>
<div class="card-footer">
<div class="col-md-12">
<div class="row">
<button class="btn btn-sm btn-primary" form="system-frm">Update</button> 32
</div>
</div>
</div>
</div>
</div> <script> function
displayImg(input,_this) { if
([Link] && [Link][0])
{ var reader = new FileReader();
[Link] = function (e) {
28
$('#cimg').attr('src', [Link]);
_this.siblings('.custom-file-label').html([Link][0].name)
}
[Link]([Link][0]);
}
}

$(document).ready(function(){ $('.summernote').summernote({
height: 200, toolbar: [ [ 'style', [ 'style' ] ],
[ 'font', [ 'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'clear'] ],
[ 'fontname', [ 'fontname' ] ],
[ 'fontsize', [ 'fontsize' ] ],
[ 'color', [ 'color' ] ],
[ 'para', [ 'ol', 'ul', 'paragraph', 'height' ] ],
[ 'table', [ 'table' ] ],
[ 'view', [ 'undo', 'redo', 'fullscreen', 'codeview', 'help' ] ]
]
})
})
</script>
<--/.User -->
<?php
$user = $conn->query("SELECT * FROM users where id ='".$_settings->userdata('id')."'");
foreach($user>fetch_array() as $k =>$v){
$meta[$k] = $v;
}
?>
<?php if($_settings->chk_flashdata('success')): ?>
33 <script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success') </script>
<?php endif;?>
<div class="card card-outline card-primary">
<div class="card-body">
<div class="container-fluid">
<div id="msg"></div>
<form action="" id="manage-user">
<input type="hidden" name="id" value="<?php echo $_settings->userdata('id') ?>">
<div class="form-group">
<label for="name">First Name</label>
<input type="text" name="firstname" id="firstname" class="form-control" value="<?php echo
isset($meta['firstname']) ? $meta['firstname']: '' ?>" required>
</div>
<div class="form-group">
<label for="name">Last Name</label>
29
<input type="text" name="lastname" id="lastname" class="form-control" value="<?php echo
isset($meta['lastname']) ? $meta['lastname']: '' ?>" required>
</div>
<div class="form-group">
<label for="username">Username</label>
<input type="text" name="username" id="username" class="form-control" value="<?php
echo isset($meta['username']) ? $meta['username']: '' ?>" required autocomplete="off">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" name="password" id="password" class="form-control" value=""
autocomplete="off">
<small><i>Leave this blank if you dont want to change the password.</i></small> </div>
<div class="form-group">
<label for="" class="control-label">Avatar</label>
<div class="custom-file">
<input type="file" class="custom-file-input rounded-circle" id="customFile" name="img"
onchange="displayImg(this,$(this))">
<label class="custom-file-label" for="customFile">Choose file</label> </div>
</div>
<div class="form-group d-flex justify-content-center">
34
<img src="<?php echo validate_image(isset($meta['avatar']) ? $meta['avatar'] :'') ?>" alt="" id="cimg"
class="img-fluid img-thumbnail">
</div>
</form>
</div>
</div>
<div class="card-footer">
<div class="col-md-12">
<div class="row">
<button class="btn btn-sm btn-primary" form="manage-user">Update</button> </div></div>
</div></div>
<style> img#cimg{ height:
15vh; width:
15vh; object-fit: cover;
border-radius:
100% 100%;
}
</style> <script> function
displayImg(input,_this) { if
([Link] && [Link][0])
{ var reader = new FileReader();
[Link] = function (e) {
$('#cimg').attr('src', [Link]);
30
}
[Link]([Link][0]);
}
}
$('#manage-user').submit(function(e){
[Link](); start_loader() $.ajax({ url:_base_url_+'classes/[Link]?
f=save', data:
new FormData($(this)[0]),
cache: false, contentType:
false, processData: false,
method: 'POST', type:
'POST',

success:function(resp){
35 if(resp ==1)
{ [Link]() }el
se{
$('#msg').html('<div class="alert alert-danger">Username already exist</div>') end_loader()
}
}
})
})
</script> </body>
</html>

font-family:
monospace;
}
.CodeMirror-dialog button { font-size:
70%;
}

System [Link] <?php


if(!class_exists('DBConnection')){ require_once('../[Link]');
require_once('[Link]');
}
class SystemSettings extends DBConnection{
public function __construct(){
parent::__construct();
}
function check_connection(){ return($this-
>conn);
}
function load_system_info(){ //
31
if(!isset($_SESSION['system_info'])){
$sql = "SELECT * FROM system_info";
$qry = $this->conn->query($sql); while($row
= $qry->fetch_assoc()){
$_SESSION['system_info'][$row['meta_field']] = $row['meta_value'];
}
// }
}
function update_system_info(){ $sql = "SELECT
* FROM system_info"; $qry =
$this->conn->query($sql); while($row =
$qry->fetch_assoc()){ if(isset($_SESSION['system_info']
[$row['meta_field']]))unset($_SESSION['system_info'][$row['me ta_field']]);
$_SESSION['system_info'][$row['meta_field']] = $row['meta_value'];
}
return
true; } 43
function update_settings_info(){
$data = "";
foreach ($_POST as $key => $value) {
if(!in_array($key,array("about_us","privacy_policy"))) if(isset($_SESSION['system_info'][$key])){
$value = str_replace("'", "&apos;", $value);
$qry = $this->conn->query("UPDATE system_info set meta_value = '{$value}' where meta_field
= '{$key}' ");
}else{
$qry = $this->conn->query("INSERT into system_info set meta_value = '{$value}', meta_field
= '{$key}' ");
}
}
if(isset($_FILES['img']) && $_FILES['img']['tmp_name'] != ''){
$fname = 'uploads/'.strtotime(date('y-m-d H:i')).'_'.$_FILES['img']['name']; $move
= move_uploaded_file($_FILES['img']['tmp_name'],'../'. $fname);
if(isset($_SESSION['system_info']['logo'])){
$qry = $this->conn->query("UPDATE system_info set meta_value = '{$fname}' where meta_field
= 'logo' ");
if(is_file(base_app.$_SESSION['system_info']['logo'])) unlink(base_app.$_SESSION['system_info']
['logo']);

}else{
$qry = $this->conn->query("INSERT into system_info set meta_value = '{$fname}',meta_field
= 'logo' ");
}
}
32
$update = $this->update_system_info();
$flash = $this->set_flashdata('success','System Info Successfully
Updated.'); if($update && $flash){ // var_dump($_SESSION); return
true; }
}
function set_userdata($field='',$value=''){ if(!empty($field)
&& !empty($value)){
$_SESSION['userdata'][$field]= $value;
} }
function userdata($field = ''){ if(!empty($field)){
if(isset($_SESSION['userdata'][$field]))
44
return $_SESSION['userdata'][$field];
else return
null; }else{
return false;
}
}
function set_flashdata($flash='',$value=''){ if(!empty($flash)
&& !empty($value)){ $_SESSION['flashdata'][$flash]=
$value;
return true;
}
}
function chk_flashdata($flash = ''){ if(isset($_SESSION['flashdata'][$flash])){
return true; }else{ return
false; } } function
flashdata($flash = ''){ if(!
empty($flash)){
$_tmp = $_SESSION['flashdata'][$flash]; unset($_SESSION['flashdata']);
return
$_tmp; }else{ return false;
}
} function
sess_des(){
if(isset($_SESSION['userdata'])){

unset($_SESSION['userdata']);
return true; } return true; }
function info($field=''){ if(!empty($field)){
if(isset($_SESSION['system_info'][$field]))
return $_SESSION['system_info'][$field];
else return false; }else{ return false;
33
} }
function set_info($field='',$value=''){ if(!empty($field)
&& !empty($value)){
$_SESSION['system_info'][$field] = $value;
}
}

}
$_settings = new SystemSettings();
$_settings->load_system_info();
$action = !isset($_GET['f']) ? 'none' : strtolower($_GET['f']);
$sysset = new SystemSettings(); switch
($action) { case 'update_settings':
echo $sysset->update_settings_info();
break; default:
// echo $sysset->index(); break;}?>

34
LOGIN PAGE
35
Home page
36
10. SKILLS LEARNED

During my internship at I learned many useful skills related to web development. I improved both my
technical knowledge and professional abilities.

• Learned to create web pages using HTML, CSS, JavaScript, and Bootstrap.
• Gained experience in PHP and MySQL for backend development and database handling.
• Understood how to design and connect databases to websites.
• Learned how to test and fix errors in web applications.
• Improved communication and teamwork skills while working with others.
• Learned time management and how to complete tasks before deadlines.
• Got practical experience in developing and hosting web projects.

Overall, this internship helped me apply what I learned in college to real-world projects and improved my
confidence as a web developer.

37

You might also like