0% found this document useful (0 votes)
29 views24 pages

Finalintern Report

Uploaded by

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

Finalintern Report

Uploaded by

0126ds201025
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

CHAPTER 1: INTRODUCTION

1.1 BACKGROUND

Internships are formal programs designed to provide practical experience in real world environment
to students who are new to field. Internships help to build competent resume by giving students
visible work experience Although colleges and universities assists students in finding the right
Internship programs, it is the responsibility of the would-be interns to carefully examine internship
programs, and see if those programs actually offer the training they need.

There is no standardized duration for how long an internship program lasts but typically an
internship is the period of three to twelve months. During this period interns have the opportunity
to explore their field of interest, find out what future they are diving and whether or not their skill
sets match their path of career [1].

1.2 PURPOSE OF INTERNSHIP

Internship program provides a new perspective to the students. It provides learning opportunities
outside the boundaries of the course curriculum and classroom activities. These opportunities
enhance student’s capability to apply theoretical understanding into real-world scenarios, thereby
enhancing the students’ academic and career goals [2].

1.3 OBJECTIVE OF INTERNSHIP

The major objectives of internships are:

To provide a platform of social network to the society .

To Build a simple calendar for society.

To View and add events in your calendar.

To expose students to a particular job and a profession or industry

To provide students with opportunity to develop skills in the field of interest

1.4 SCOPE OF THE INTERNSHIP REPORT

This report is made only for academic purpose and to full-fill the requirement for industrial
attachment. This report has covered the direct and indirect aspects of software and website
development industry and their challenges.

.A brief description of SUVEN TECHNOLOGIES is included so that other students can get to know
about the company and may decide whether it is suitable for them or not. If internships are about
gathering skills, then projects are the main way of gathering them. Till writing this report Author
have completed first phase and helped in developing the classmonk.com website. The tasks, timeline
and results of those specific projects are included for a better visualization of industry standard
projects.
1.5 PROBLEM DEFINITION

People generally don’t feel that much comfortable in connecting and communicating physically
with strangers . so, to solve that problem we required social network on an online platform .

On the other hand, today’s industries are also focusing on social networking platform for knowing
basic details of their employees ex- Link-din.

A social network is a website that allows users to connect with other people and businesses online.
Social networks typically have a similar format, where each business or person has their own profile,
which provides personal or business details.02-Apr-2022

1.6 LIMITATION OF THE REPORT

While gathering information, analysing and representing them we faced some limitations. However,
despite the limitations author have tried hard to prepare a comprehensive and rather interesting
report. The overall limitations of the report are mentioned below:

There were some restrictions in disclosing some information as it was assumed to be confidential.
Therefore, author could not include those in my report.

Some of the information that author got from secondary sources were not arranged consistently.

AS the project was built from starch, author could not see the disadvantages of the old system.

Because of organizational confidentiality, author could not put or disclose some information in the
report

1.7 SELECTION OF ORGANIZATION AND DURATION

The selection of organization is twofold. The first is the student’s area of interest and second is the
willingness of the host company to take the student as an intern. As a student is search of a host
company for internship program, students are required to prepare a competent resume and
perform well in the ‘interview’ and/or ‘assessment’.

1.8 SOURCE OF DATA COLLECTION

In order to make the report as perfect as possible author here used data collection procedures which
articulate the way that author have followed in my report. For this report, information has been
gathered from both primary and secondary sources.

1.8.1 PRIMARY SOURCE

For primary data, several face-to-face interviews have been conducted with officials from different
departments of SUVEN TECHNOLOGIES. Information provided by them has been very important for
this report .Author conducted with the following professionals:

Collect information from different employee asking them

Different documents available from the portal of Soft-web Developers.

Content provided from Soft-web Developers website.

Different employees of Soft-web Developers.


1.8.2 SECONDARY SOURCES

To understand different software methodology, software quality assurance, and many other data
have been gathered from the internet and different articles and the sources have been given in the
references part.

The secondary sources of data collection for the report includes:-

Different websites which define globally accepted standards.

Different websites which keep track of achievements of international companies.

Reference Books.

Follow some other internship report to prepare standard on.


CHAPTER 2: ORGANIZATION

2.1 INTRODUCTION TO FIRM OR EMPLOYER :

India is making quick progress in software and website development industry. There are many
mentionable software and website development organizations in India who has contributed
significantly to the rise of software and website development industry sector in India and SUVEN
CONSULTANT & TECHNOLOGIES Pvt . Ltd. is one of them.

This exceptional team has every solution to their clients' biggest and most complicated problems.
This organization services are offered both on and offshore, and delivered with pride and passion.
This organization is a group of young, motivated, skilled people whose main goal is to provide their
clients with an innovative solution regarding web development and software development.

SUVEN company is led by a strong management team and knowledgeable computer engineers and
IT knowledge workers with experience in various areas of the information and communication
technology (ICT) industry covering software development, wired & wireless solutions, network
design and implementation, e-Business applications solutions and others internet related systems.

SUVEN has combined a set of products and services that meet the immediate information
technology needs of a small business: Basic and enhanced hosting services, Web design, software
development and Intranet applications. With the experience, SUVEN is able to help its customers to
define and implement their e-business strategies successfully.

This organization is driven towards providing the best of the technology era through solutions locally
and globally with a slogan

SUVEN Consultants and Technology Private Limited is an unlisted private company incorporated on
11 July, 2013. It is classified as a private limited company and is located in Mumbai, Maharashtra. Its
authorized share capital is INR 1.00 lac and the total paid-up capital is INR 1.00 lac.

The current status of SUVEN Consultants and Technology Private Limited is - Active.

The last reported AGM (Annual General Meeting) of SUVEN Consultants and Technology Private
Limited, per our records, was held on 29 November, 2021. Also, as per our records, its last balance
sheet was prepared for the period ending on 31 March, 2021.

SUVEN Consultants And Technology Private Limited has two directors - Simran Rocky
Jagtiani and Savita Nari Jagtiani .
2.2.CLIENTS:

We are in operation since Jan 2006 and have placed more than 250 candidates. Till date in Co’s like
Royal Bank of Scotland, Standard Chartered Bank, Kotak Mahindra Bank, Emkay Shares and Stock
brokers Ltd, ,SalenOffers.com, Pinnacle Financial and Investment Consultancy Pvt . Ltd., Rustomjee
Group, Kukreja Constructions, Ebay India (Inovent Solutions Ltd.), Sara Interiors, Landmark
Automobiles, NewsWire18 Ltd.,HT Media Ltd, etc.

Top Corporate Comments

An extremely focused unit more essentially has technical know-how which is the reason behind
meeting client expectations. One of the rare breeds who still considers quality above quantity in this
age of war for talent.

Mr. Soumyakant Singh

Assistant Manager H.R

Emkay Global Financial Services Ltd.

When I was a candidate for you;

» You first tried to understand my interest level for profile & gave me filtered option as per my
choice.

» You have very clear idea about the job role & candidate going for interview.

» Not like other consultants who you just push candidates for interview without knowing their skills
& companies requirements.

» Very supportive & excellent co-ordination, Good follow-up skills.

Now when I am your client;

» Good profile base of candidates

» Excellent co-ordination

» Having lot of patience…………as we are very choosey in our candidates.

Krishna Singh

Senior Manager - Corporate Salary

Kotak Mahindra Bank

Service of the consultancy is very good, they understand our requirement very clear and short list
the candidates as per our Job Description, and package what we are going to offer, which save our
lot of time and also good for the candidates who will not get disappointment unnecessary. At time i
have notice that we got the relevant C.V's in hours time, and after that again they follow up for the
schedules.

Mr.Avinash Asthana

General Manager-Admin & Imp/Exp.

Datamini Technologies (India) Ltd.

Young team of professionals who understand client requirements very minutely and deliver
effectively.

Mr. Kishan B Mansharamani

Managing Director

Accent Conrols Private Ltd.

2.3. OPERATIONS AND FUNCTIONS :

In today’s world, every organization depends heavily on technology to keep operations connected,
drive revenue and support ever growing customer demands. Undoubtedly, Information Technology
(IT) is the key to manage technology and it spans wide of areas that include but are not limited to
things such as computer software, information systems ,programming languages, database
management systems, networking etc. keeping these in minds SUVEN provides an impressive tally of
services and solution. SUVEN provides the following services:

Software Development : SUVEN provides a flexible and scalable solutions of software (web based or
desktop based) to meet our needs for small or large firm.

Website Development : It provides a professional website design and Development Company with
complete solution for all kinds of business along with best web hosting services.

Business Intelligence : BI programs can also incorporate forms of advanced analytics, such as data
mining, predictive analytics, text mining, statistical analysis and big data analysis

2.4 FUTURE SCOPE OF ORGANIZATION:

SUVEN strongly believes that all fresh graduates , who plan to start a stable and promising career in
IT should do Tech certifications & Coding Internships - right from second year of their graduation.
We train college students in One or more Career Tracks and provide 100% placement assistance to
each of them.
6000+ have finished complete training and got placed by our Placement team. Have a quick look at
the training programmes and their schedules.
CHAPTER 03 :LEARNING AS INTERN

3.1.SUPERVISION INTRODUCTION :

Rocky Jagtiani(Head of internship & Content Development)

Mr Rocky Jagtiani has 19 year of training experience in Open-Source Technologies like Java, Python,
JavaScript, Databases & Machine learning. He is mentor to many top engineering colleges for
training faculties through FDP's and Bootcamps.

He is registered as a freelance trainer with LnD departments of 17 IT MNC's in India. He loves to


analyse data using tools like QlikView, Tableau or Orange, As well solve (real) problems using Python
& Java. Has trained more than 15000 young working professionals(0-6 years WorkEx) till date.

Our Supervisor is very responsible for managing the workflow and training new hires on how they
can best serve customers and teams of employees. They also create schedules that keep everyone
busy with deadlines met to prevent gaps or downtime while giving direction and feedback about
what needs improvement.

3.2.KNOWLEDGE AND SKILLS AQUIRED:

In this internship program we have learned various new skills and gained the knowledge of industry
work on virtual mode.

Some basic skills are mentioned below :

1.Communication and interpersonal skills

2.real time project work on PHP & MySQL .

3.Teamwork and collaboration.

4.Time management and multitasking.

5.ciritcal thinking

6.Accountability

Knowledge Acquired :

During my virtual internship I have gained a lot of knowledge about coding ,industrial work ,
completing assignments were the most difficult task for me but I have done it .and I am very glad to
be the part of this internship program I have also various tasks as mentioned :
1.ORGANIZATION SELECTION

It is very important to select organization that fulfils our objectives. As it is for our internship, it is
necessary to select organization where there is learning environment because as an intern our first
motive is to learn how the works are carried out in the real field.

The four-year degree of BSc. CSIT allows us to attain knowledge on various aspects of Information
Technology. At the same time the internship is the one of the major highlight of the program to
expose the students to the professional world. Among the various criteria and sectors provided to us
in internship prerequisite statement, software Development Company was chosen.

Various organizations were shortlisted and approached out of which the organization with the best
lucrative offer and environment was selected.

SUVEN Ltd. an IT company that covers software development training and internship , wired &
wireless solutions, network design and implementation, e-Business applications solutions and others
internet related systems and author got selected there. The company helped me gain wide
experience by getting me involved in their projects.

2.TEAM

Author has been assigned with my senior programmer Sulav Paudel for the project. He gave me
introductions so that author could understand the project in short time and also assigned me the
problem to be fixed. Without his helpful mentoring, author could not involve with the project
successfully

3.3.PROJECT ASSIGNED :-

DESIGNING A SOCIAL NETWORKING APP

Technologies used :

When author has been told to work on Robin’s nest , author asked Sulav sir which technologies
author need to learn to work this project. He gave me a list of technologies and author learned
them.

PHP

MySQL

Angular ( Front end JavaScript framework)


The following modules are required to be coded:

• A signup processes

• A login forms

• A logout facility

• Session control

• User profiles with uploaded thumbnails

• A member directory

• Adding members as friends

• Public and private messaging between members

• Styling the project

We decided to name the project Robin’s Nest; you are allowed to modify the name and logo in the
index.php and header.php files.

functions.php:

Let’s jump right into the project, starting with Example 1-1,functions.php, the include file for the
main functions. This file contains a little more than just the func‐ tions, though, because We have
added the database login details here instead of using yet another separate file. The first four lines
of code define the host and name of the database to use, as well as the username and password.

By default the MySQL username is set to root, and the database used by the pro‐gram is also called
robinsnest. It doesn’t matter what the MySQL username is, as long as it already exists, and the same
goes for the database name.

CREATE DATABASE robinsnest; Then (also assuming you have the privileges to do so) you can create
a user called robinsnest capable of accessing this database like this: GRANT ALL ON robinsnest.* TO
'robinsnest'@'localhost' IDENTIFIED BY 'rnpassword'; Obviously you would use a much more secure
password for this user than rnpass‐ word, but for the sake of simplicity, this is the password used in
these examples—just make sure you change it if you use any of this code on a production site (or, as
We men‐tioned, you can use a pre-existing username and database).

Given the correct values, the subsequent two lines in the file will open a connection to MySQL and
select the database.
The Functions The project uses five main functions:

createTable Checks whether a table already exists and, if not, creates it queryMysql Issues a query to
MySQL, outputting an error message if it fails destroy Session Destroys a PHP session and clears its
data to log users out sanitize String Removes potentially malicious code or tags from user input show
Profile Displays the user’s image and “about me” message if they have one The behavior of all of
these should be obvious to you by now, with the possible expectation of show Profile, which looks
for an image of the name (where is the username of the current user) and, if it finds it, displays it.

It also displays any “about me” text the user may have saved. We have ensured that error handling is
in place for all the functions that need it, so that they can catch any typographical or other errors
you may introduce and generate.

error messages. However, if you use any of this code on a production server, you will probably want
to provide your own error-handling routines to make the code more user-friendly. So, type in
Example 1-1 and save it as functions.php and you’ll be ready to move on to the next section.

header.php:

For uniformity, each page of the project needs to have access to the same set of fea‐ tures.
Therefore, we placed these things in Example 1-2, header.php.

This is the file that is actually included by the other files. It includes functions.php. This means that
only a single require once is needed in each file. header.php starts by calling the function session
start.

This sets up a session that will remember certain values we want stored across different PHP files. In
other words, it represents a visit by a user to the site, and it can time out if the user ignores the site
for a period of time.

With the session started, the program then outputs the HTML needed to set up each web page,
including loading stylesheets and the various JavaScript libraries required.

After this the file of functions (functions.php) is included, and the default string of “Welcome Guest”
is assigned to $userstr. Next the code checks whether the session variable user is currently assigned
a value.

If so, a user has already logged in, so the variable $loggedin is set to TRUE and the username is
retrieved from the session variable user into the PHP variable $user, with $userstr updated
appropriately. If the user has not yet logged in, then $loggedin is set to FALSE.

Next, some HTML is output welcoming the user (or guest if not yet logged in), and the

elements required by jQuery Mobile for the page’s header and content sec‐ tions are output. After
this, using the value of $loggedin, an if block displays one of two sets of menus. The non-logged-in
set simply offers options of Home, Sign Up, and Log In, whereas the logged-in version offers full
access to the app’s features. The buttons are styled using jQuery Mobile notation, such as data-
role='button' to display an element as a button, data-inline='true' to display elements inline (like an
element), and data-transition="slide" to make new pages slide into view when clicked. The
additional styling applied to this file is in the file styles.css

setup.php:

With the pair of included files written, it’s now time to set up the MySQL tables they will use. We do
this with Example 1-3, setup.php, which you should type and load into your browser before calling
up any other files; otherwise, you’ll get numerous MySQL errors.

The tables created are short and sweet, and have the following names and columns:

• members: username user (indexed), password pass

• messages: ID id (indexed), author auth (indexed), recipient recip, message type pm, message
message

• friends: username user (indexed), friend’s username friend

• profiles: username user (indexed), “about me” text Because the createTable function first checks
whether a table already exists.

this program can be safely called multiple times without generating any errors. It is very likely that
you will need to add many more columns to these tables if you choose to expand this project.

If so, bear in mind that you may need to issue a MySQL DROP TABLE command before re-creating a
table.

index.php:

This file is trivial, but necessary nonetheless to give the project a home page. All it does is display a
simple welcome message.

In a finished application, this would be where you sell the virtues of your site to encourage signups.
Incidentally, seeing as we have already set up all the MySQL tables and created the included files,
index.php, into your browser to get your first peek at the new application.
Checking for Username Availability:

Now go back to the program start and you’ll see a block of JavaScript that starts with the function
checkUser. This is called by the JavaScript on Blur event when focus is removed from the username
field of the form.

First it sets the contents of the We mentioned (with the id of info) to an empty string, which clears it
in case it previously had a value.

Next a request is made to the program checkuser.php, which reports whether the user‐ name user is
available. The returned result of the asynchronous call (performed using jQuery), a friendly message,
is then placed in the info .

This section also uses the sanitizeString function to remove potentially malicious characters before
looking up the username in the database and, if it’s not already taken, inserting the new user‐name
$user and password $pass.

Logging In:

Upon successfully signing up, the user is then prompted to log in. A more fluid response at this point
might be to automatically log in a newly created user, but because We don’t want to overly
complicate the code, we have kept the signup and login modules separate.

You can easily implement this if you want to, however. This file uses the CSS class fieldname to
arrange the form fields, aligning them neatly under each other in columns.

When loaded into a browser (and in conjunction with checkuser.php, shown later), this program will
look like Figure 1-2, where you can see that the asynchronous call has identified that the username
Robin is available. If you would like the password field to show only asterisks, change its type from
text to password.

checkuser.php:

To go with signup.php, here’s Example 1-6, checkuser.php, which looks up a username in the
database and returns a string indicating whether it has already been taken. Because it relies on the
functions sanitizeString and queryMysql, the program first includes the file functions.php.

Then, if the $_POST variable user has a value, the function looks it up in the database and,
depending on whether it exists as a username, outputs either “Sorry, the user‐ name ‘user’ is taken”
or “The username ‘user’ is available.”

Just checking the function mysql_num_rows against the result is sufficient for this, as it will return 0
if the name is not found, or 1 if it is found.
The HTML entities ✘ and ✔ are also used to preface the string with either a cross or a checkmark,
and the string will be displayed in either red for the class taken or green for the class available, as
defined in styles.css, shown later in this chapter.

login.php:

With users now able to sign up on the site, Example 1-7, login.php, provides the code needed to let
them log in. Like the signup page, it features a simple HTML form and some basic error checking, as
well as using sanitizeString before querying the MySQL database.

The main thing to note here is that, upon successful verification of the username and password, the
session variables user and pass are given the username and password values.

As long as the current session remains active, these variables will be accessible by all the programs in
the project, allowing them to automatically provide access to logged-in users.

You may be interested in the use of the die function upon successfully logging in. This is there
because it combines an echo and an exit command in one, thus saving a line of code.

For styling, this (like most of the files) applies the class main to indent the content from the lefthand
edge. When you call this program up in your browser, it should look like Figure 1-3.

Note how the input type of password has been used here to mask the password with aster‐ isks to
prevent it from being viewed by anyone looking over the user’s shoulder.

PROFILE.PHP:

One of the first things that new users may want to do after signing up and logging in is to create a
profile, which can be done via Example 1-8, profile.php

We think you’ll find some interesting code here, such as routines to upload, resize, and sharpen
images. Let’s start by looking at the main HTML at the end of the code.

This is like the forms you’ve just seen, but this time it has the parameter enctype='multipart/form-
data'. This allows us to send more than one type of data at a time, enabling the posting of an image
as well as some text.

There’s also an input type of file, which creates a Browse button that a user can press to select a file
to be uploaded.

When the form is submitted, the code at the start of the program is executed. The first thing it does
is ensure that a user is logged in before allowing program execution to proceed. Only then is the
page heading displayed.

Adding the “About Me” Text


Next, the $_POST variable text is checked to see whether some text was posted to the program. If
so, it is sanitized and all long whitespace sequences (including carriage returns and line feeds) are
replaced with single spaces.

This function incorporates a double security check, ensuring that the user actually exists in the
database and that no attempt at hacking can succeed before inserting this text into the database,
where it will become the user’s “about me” details.

If no text was posted, the database is queried to see whether any text already exists in order to
prepopulate the

Adding a Profile Image:

Next we move on to the section where the $_FILES system variable is checked to see whether an
image has been uploaded.

If so, a string variable called $saveto is created, based on the user’s username followed by the
extension .jpg. For example, a user called Jill will cause $saveto to have the value Jill.jpg.

This is the file where the uploaded image will be saved for use in the user’s profile. Following this,
the uploaded image type is examined and is accepted only if it is a .jpeg, .png, or .gif image. Upon
success, the variable $src is populated with the uploaded image using one of the imagecreatefrom
functions, according to the image type uploaded.

The image is now in a raw format that PHP can process. If the image is not of an allowed type, the
flag $typeok is set to FALSE, preventing the final section of image upload code from being processed.

Processing the Image:

First, we store the image’s dimensions in $w and $h using the following statement, which is a quick
way of assigning values from an array to separate variables: list($w, $h) = getimagesize($saveto);

Then, using the value of $max (which is set to 100), we calculate new dimensions that will result in a
new image of the same ratio, but with no dimension greater than 100 pixels.

This results in giving the variables $tw and $th the new values needed. If you want smaller or larger
thumbnails, simply change the value of $max accordingly.

Next, the function imagecreatetruecolor is called to create a new, blank canvas $tw wide and $th
high in $tmp.
Then imagecopyresampled is called to resample the image from $src to the new $tmp. Sometimes
resampling images can result in a slightly blurred copy, so the next piece of code uses the
imageconvolution function to sharpen the image up a bit.

Finally, the image is saved as a .jpeg file in the location defined by the variable $saveto, after which
we remove both the original and the resized image canvases from memory using the imagedestroy
function, returning the memory that was used.

Displaying the Current Profile:

Last but not least, so that the user can see what the current profile looks like before editing it, the
showProfile function from functions.php is called prior to outputting the form HTML. If no profile
exists yet, nothing will be displayed.

When a profile image is displayed, CSS is applied to it to provide a border, a shadow, and a margin to
its right, to separate the profile text from the image. The result of loading Example 1-8 into a
browser is shown in Figure 1-4, where you can see that the

members.php:

your users will be able to find other members and choose to add them as friends (or drop them if
they are already friends). This pro‐ gram has two modes. The first lists all members and their
relationships to you, and the second shows a user’s profile.

Viewing a User’s Profile :

The code for the latter mode comes first, where a test is made for the variable view, retrieved from
the $_GET array. If it exists, a user wants to view someone’s profile, so the program does that using
the showProfile function, along with providing a couple of links to the user’s friends and messages.

Adding and Dropping Friends :

After that, the two $.GET variables add and remove are tested. If one or the other has a value, it will
be the username of a user to either add or drop as a friend.

We achieve this by looking up the user in the MySQL friends table and either inserting the user‐
name or removing it from the table. And, of course, every posted variable is first passed through
sanitizeString to ensure that it is safe to use with MySQL.
Listing All Members :

The final section of code issues a SQL query to list all usernames. The code places the number
returned in the variable $num before outputting the page heading.

A for loop then iterates through each and every member, fetching their details and then looking
them up in the friends table to see if they are either being followed by or following the user.

If someone is both a follower and a followee, they are classed as a mutual friend. The variable $t1 is
nonzero when the user is following another member, and $t2 is nonzero when another member is
following the user.

Depending on these values, text is displayed after each username, showing the relationship (if any)
to the current user. Icons are also displayed to show the relationships. A double-pointing arrow
means that the users are mutual friends, a left-pointing arrow indicates the user is following another
member, and a right-pointing arrow indicates that another member is fol‐ lowing the user.

Finally, depending on whether the user is following another member, a link is pro‐ vided to either
add or drop that member as a friend. When you call Example 1-9 up in a browser, it will look like
Figure 1-5. Note how the user is invited to “follow” a nonfollowing member, but if the member is
already following the user, a “recip” link to reciprocate the friendship is offered.

In the case of a user already following another member, the user can select “drop” to end the
follow‐ ing

friends.php:

The module that shows a user’s friends and followers is Example 1-10, friends.php. This interrogates
the friends table just like the members.php program, but only for a single user. It then shows all of
that user’s mutual friends and followers along with the people they are following.

All the followers are saved into an array called $followers, and all the people being followed are
placed in an array called $following. Then a neat piece of code is used to extract all of those who are
both following and followed by the user, like this: $mutual = array_intersect($followers, $following);
The array_intersect function extracts all members common to both arrays and returns a new array
containing only those people.

This array is then stored in $mutual. Now it’s possible to use the array_diff function for each of the
$followers and $following arrays to keep only those people who are not mutual friends, like this:
$followers = array_diff($followers, $mutual); $following = array_diff($following, $mutual); This
results in the array $mutual containing only mutual friends, $followers con‐ taining only followers
(and no mutual friends), and $following containing only people being followed (and no mutual
friends).
Now that we’re armed with these arrays, it’s a simple matter to separately display each category of
members, as can be seen in Figure 1-6. The PHP sizeof function returns the number of elements in
an array; here We use it just to trigger code when the size is nonzero (that is, when friends of that
type exist). Note how, by using the variables $name1, $name2, and $name3 in the relevant places,
the code can tell when you’re looking at your own friends list, using the words Your and You are,
instead of simply displaying the username. The commented line can be uncommented if you wish to
display the user’s profile information on this screen.

messages.php:

The last of the main modules is Example 1-11, messages.php. The program starts by checking
whether a message has been posted in the variable text. If so, it is inserted into the messages table.
At the same time, the value of pm is also stored.

This indicates whether a message is private or public. A 0 represents a public message, and 1 is
private. Next, the user’s profile and a form for entering a message are displayed, along with radio
buttons to choose between a private or public message.

After this, all the messages are shown, depending on whether they are private or public. If they are
public, all users can see them, but private messages are visible only to the sender and recipient.

This is all handled by a couple of queries to the MySQL database. Additionally, when a message is
private, it is introduced by the word whispered and shown in italic. Finally, the program displays a
couple of links to refresh the messages (in case another user has posted one in the meantime) and
to view the user’s friends.

The trick using the variables $name1 and $name2 is again used so that when you view your own
profile, the word Your is displayed instead of the username . You can see the result of viewing this
program with a browser in Figure 1-7.

Note how users viewing their own messages are provided with links to erase any they don’t want to
keep. Also of note is how jQuery Mobile’s styling of radio buttons has been implemented for
selecting between sending a private or a public message.

logout.php:

The final ingredient in our social networking recipe is Example 1-12, logout.php, the logout page
that closes a session and deletes any associated data and cookies. The result of calling up this
program is shown in Figure 1-8, where the user is now asked to click a link that will take them to the
not logged-in home page and remove the logged-in links from the top of the screen. Of course, you
could write a JavaScript or
SCOPE AND DEVELOPMENT APPROACH :

The scope of the project is to create a classmonk.com website. The reason behind to create a web-
based application easily customizable, accessible anywhere, accessible for a range device, increased
security etc.

The advance admin panel is created to monitor the users and handle all the admin related task.
There is different role to different admin which are handled by the super admin. All the web API are
created using Laravel and MYSQL is used as the required database. UML modeling is used to create
the basic design and flow of the application and once it is done the actual coding is done. Initially all
the required API are created along with the database tables. The required business logic is added to
improve the scope of the application and the database connections are established. Few test cases
are created and manual testing is used in this project.

Test cases are created in a manner to check all the required field level validations and also database
validations. Once the application is created the corresponding test cases are executed against couple
of runs and the bugs are resolved if any identified. Once the testing is done, the final product is
delivered.

SOFTWARE TOOLS USED :

The whole Project is divided in two parts the front end and the back end.

FRONT END:

The front end is designed using of JavaScript (Angular5), CSS, HTML etc.

HTML:

HTML or Hyper Text Mark-up Language is the main mark-up language for creating web pages and
other information that can be displayed in a web26 browser. HTML is written in the form of HTML
elements consisting of tags enclosed in angle brackets (like ), within the web page content. The
purpose of a web browser is to read HTML [5] documents and compose them into visible or audible
web pages. It provides a means to create structured documents by denoting structural semantics for
text such as headings, paragraphs, lists, links, quotes and other items. It can embed scripts written in
languages such as JavaScript which affect the behavior of HTML web pages.
CSS:

Cascading Style Sheets (CSS) is a style sheet language used for describing the look and formatting of
a document written in a mark-up language. While most often used to style web pages and interfaces
written in HTML and XHTML, the language can be applied to any kind of XML document, including
plain XML, SVG and XUL [5].

CSS is a cornerstone specification of the web and almost all web pages use CSS style sheets to
describe their presentation.CSS is designed primarily to enable the separation of document content
from document presentation, including elements such as the layout, colors, and fonts.

JAVA SCRIPT:

JavaScript (JS) is a dynamic computer programming language. It is most commonly used as part of
web browsers, whose implementations allow client-side scripts to interact with the user, control the
browser, communicate asynchronously, and alter the document content that is displayed. It is also
being used in server-side programming, game development and the creation of desktop and mobile
applications. JavaScript is a prototype-based scripting language with dynamic typing and has first-
class functions.

PHP:

(Laravel) Laravel is a MVC framework with bundles, migrations, and Artisan CLI. Laravel offers a
robust set of tools and an application architecture that incorporates many of the best features of
frameworks like Code Igniter, Yii, ASP.NET MVC, Ruby on Rails, Sinatra, and others. Laravel is an
Open-Source framework. It has a very rich set of features which will boost the speed of Web
Development.

If you familiar with Core PHP and Advanced PHP, Laravel will make your task easier.

It will save a lot time if you are planning to develop a website from scratch. Not only that, the
website built in Laravel is also secure. It prevents the various attacks that can take place on websites.

MySQL:

MySQL ("My S-Q-L", officially, but also called "My Sequel") is (as of July 2013) the world's second
most widely used open-source relational database management system (RDBMS).

It is named after co-founder Michael Widenius daughter.

The SQL phrase stands for Structured Query Language. The MySQL development project has made
its source code available under the terms of the GNU General Public License, as well as under a
variety of proprietary agreements.
MySQL was owned and sponsored by a single for- profit firm, the Swedish company MySQL AB, now
owned by Oracle Corporation .

MySQL is a popular choice of database for use in web applications, and is a central component of the
widely used LAMP opens source web application software stack (and other 'AMP' stacks). LAMP is an
acronym for "Linux, Apache, MySQL, and Perl/PHP/Python." Free software-open-source projects that
require a full-featured database management system often use MySQL.

For commercial use, several paid editions are available, and offer additional functionality.

3.4.ROLES AND RESPONSIBILITY

During the internship period knowledge of various platforms and programming languages are
gained. The target was to deliver a fully-fledged web-based social networking app by using different
tools and frameworks such as PHP and MySQL.

Hence, to meet that objective, this internship required the extensive preliminary studies about the
core PHP before actually analysing the actual requirement of the system.

The study was required not only to understand the subject under study but also to realize the
solutions to the existing problems and implementing the findings from the study was another bigger
challenge.

Besides study of, Core PHP other major activities carried out during internship was extensive study
of current online platform, presentations of study analysis and practical implementations, and most
importantly the team discussions to analyse the customer change request.

The regular meetings with the Supervisor and discussion with mentors helped me to wide my
horizon of knowledge of the existing system and problem background. Software development is one
of the major services of the SUVEN PVT LTD developers .

SUVEN developers provides a flexible and scalable solutions of software (web based or desktop
based) to meet our needs for small or large.
3.5.Learning outcome:

Working as an intern on the above project gave me an exposure to various things :-

 A strong sense of identity.


 Connection to and contribution with the team members.
 A strong sense of wellbeing.
 Confident and involved learners.
 Effective communicators.

CHAPTER 04: CHALLENGES,ISSUES AND CONSTRAINTS

During my internship I have faced some challenges ,that I have mentioned below :-
A Steep Learning Curve
Students and recent graduates put in a lot of time studying, learning, and preparing for their careers;
however, the true challenge comes once all their knowledge is put to the test in a real-world situation.
Many interns undertake their very first working experience while participating in an internship, and are
often expected to participate at the same level as an organization’s full-time employees, despite their lack
of on-the-job training.
This can lead to stress or feelings of being overwhelmed, which may deter some individuals from realizing
their true potential in their career.
The best way to combat those overwhelming feelings is to keep an open line of communication between
yourself, your employer, and your internship program manager.
In the initial phase of your internship, ask your program manager and your employer detailed questions
about their expectations. Additionally, if you are unsure of how to complete a certain task, it won’t hurt to
ask your employer or a colleague for help.
This will show that you’re willing to learn and take the initiative, and getting comfortable with this sort of
communication will be a huge advantage in the long run.

Menial Tasks
As an intern, you’ll likely be given some of the tasks that no one else wants to do. Even if you land an
internship in your chosen field, at the company of your dreams, you might be going on coffee runs or
cleaning up the conference room after meetings.
The best way to handle a situation such as this is to change your perspective, and actively seek out the
advantages.
While performing mundane tasks, take the opportunity to learn the culture of the company, as well as its
core values.
If you’re handing out coffee in the morning, you’re actually in a great position to expand your professional
network while making yourself known around the office.
As boring as the menial tasks are, they are part of the foundation of any organization, so keep your head
up, smile, and be personable – someone very important will probably notice.

Lack of Feedback
Full-time employees are typically scheduled for performance evaluations. These evaluations are
particularly helpful as they provide insight into an employee’s strengths, as well as what aspects of their
role can be improved upon.
Entry-level employees and interns can sometimes be overlooked when it comes to feedback or
performance reviews, which may leave them feeling unsure or perhaps confused.
Earlier, we spoke a bit about keeping the lines of communication between yourself and your employer
open, and this situation is no different.
In the absence of any formal performance evaluations, there is absolutely no shame in asking your
manager or supervisor if they have some time to talk about your work performance.
Not only will you learn more about your employer’s expectations, but you will demonstrate to your
employer that you are eager to learn and improve.

Little or No Pay
Lack of pay, or very little pay, can be a fact of life for many interns. Whether an internship is paid varies
from company to company, so if receiving a pay check is on the top of your list of preferred benefits, ask
your program manager to help you find an organization that offers a paid internship.
If you are unable to find a paid internship, you must then weigh the pros and cons. Despite not getting
paid, you will still be performing tasks within your field, which can be used to build your resume.
Additionally, you will have the opportunity to gain hands-on experience and expand your professional
network.
These are huge advantages to anyone who is just starting out, so if your life circumstances allow you to
take on an unpaid internship, you should go for it.
Try to look at being paid at your internship as an added bonus, with the other perks and benefits being
most important.
The old adage is that everyone has to start somewhere. Whether it’s an entry-level position or an
internship, those entering the workforce for the first time will invariably face challenges and experience
growing pains.
Always remember that each and every individual at an organization plays an important role, and if you’re
an intern, take some time this week to give yourself the good ol’ proverbial pat on the back – you’ve
earned it.
CHAPTER 05:SWOT ANALYSIS

SWOT Analysis of Internship:

Strengths:

 Time management skill


 Creative Problem-Solving skills
 Proficiency in Microsoft Office
 Increased skill in programming

Weaknesses:

 Not adjusted to office culture


 Not a competitive environment

Opportunities:

 Working for the it sector is well respected in Job


 First to hear about new business and opportunities in the area
 Understanding the level of coding in a company requires

Threats:

 Intern through temporary contract


 Chance of making a mistake
 Not in international field
CHAPTER 06: CONCLUSION

“On the whole, this internship was a useful experience. I have gained new knowledge, skills and met
many new people. I achieved several of my learning goals, however for some the conditions did not
permit. I got insight into professional practice. I learned the different facets of working with SUVEN
TECHNOLOGIES .I experienced that having a good command in programming can easily provide me
whatever I thought about myself .

Related to my study I learned more about the PHP and MySQL database by which I have created
my project and developed a good command on these technologies . I have seen that my supervisor
is also a very good human so that he always try to help me out whenever I have any doubt related to
my assignment and my projects . I experienced that it is of importance that the education is
objective and that you have to be aware of the view of other people. Environmental education is not
one sided, but it is a way of sharing knowledge, ideas and opinions.

The internship was also good to find out what my strengths and weaknesses are. This helped me to
define what skills and knowledge I have to improve in the coming time. It would be better that the
knowledge level of the language is sufficient to contribute fully to projects.

At last, this internship has given me new insights and motivation to pursue a career in
PROGRAMMING FIELD.”

You might also like