1 Main Page (3 Files Merged) PDF
1 Main Page (3 Files Merged) PDF
PROJECT REPORT
On
“Talk-Walk”
(Intranet Social Site)
Submitted by
Vijaya Attri
Sangeeta Rajput
April, 2017
CERTIFICATE
Final Year VIII Semester (Computer Science & Engineering) who carried
Sirmoli Road, 6th Mile Stone, Sirmoli Road, 6th Mile Stone,
i
ACKNOWLEDGEMENT
We would like to express our heartfelt gratitude to Prof. Satyendra Kumar Sharma
(Director, MITRC, Alwar) for his strong guidance.
We are thankful to Ms. Dazy Arya (Head of the Dept. CSE) to providing us unfailing
trust during the entire project work.
We are also thankful to our guide Mr. Radha Raman Chaudhary (Asst. Prof. CSE) for
her able guidance, continuous support and cooperation throughout our project without
which the present work would not have been possible.
We are thankful to all faculty members of Computer Science & Engineering Dept., our
seniors and friends for extending good support and encouragement to complete the
project work.
Finally we would like to thanks our parents for their prayers, sacrifices and
encouragement throughout our academic carrier.
ii
ABSTRACT
This project is a intranet social website which is design in php, html, JavaScript, CMS it
is basically aims to provide the features of messaging, posts, request, timeline etc. This
social networking site can be used globally by all the persons who want to connect on
social media when it will be deployed. In this project the user can create its account
through registration page and become a user for this site by getting a username and id for
that particular person so that again he don’t want to register he/she may can login through
their id and password. We can add many features like timeline, post, search, message,
request.
The user can send friend request and can search for someone and send message to a friend
.The user can update their profile picture update cover photo and manage their profile
accordingly.
For the database entry we can use XAMP server to make a database in local host and
make the database separately and can run various queries to make the entries and enter
the data into the database.
So this project is like Facebook application by which we can connect socially with people
but Facebook is on large scale and this project is on very small scale. And the name used
for this website is TALK WALK.
iii
LIST OF FIGURES
iv
TABLE OF CONTENTS
CERTIFICATE...............................................................................................................i
ACKNOWLEDGEMENT.............................................................................................ii
ABSTRACT...................................................................................................................iii
LIST OF FIGURES......................................................................................................iv
Chapter 1 .......................................................................................................................... 1
INTRODUCTION ........................................................................................................... 1
1.1 Problem Statement ................................................................................................ 1
1.2 Domain Study........................................................................................................ 3
1.3 Existing Systems ................................................................................................... 4
1.4 Project Scope ......................................................................................................... 5
1.5 Organization Profile .............................................................................................. 5
Chapter 2 .......................................................................................................................... 7
SYSTEM REQUIREMENT ............................................................................................ 7
2.1 Literature Survey ....................................................................................................... 7
2.2 Functional Specifications ........................................................................................... 7
Server Object ............................................................................................................ 7
Account Object ......................................................................................................... 8
Account Details Object ............................................................................................. 8
Privacy Settings Object ............................................................................................. 8
Chat Session Object, Event Object, Link Object, Note Object and Page Object ..... 9
Message Object ......................................................................................................... 9
2.3 Non-Functional Specification .................................................................................. 14
2.4 Software Tools Specification ................................................................................... 14
Chapter 3 ........................................................................................................................ 18
3.1 Modular Design ....................................................................................................... 18
3.2 System Design ......................................................................................................... 18
3.2.1 Data Flow Diagrams ............................................................................................. 18
3.2.2Use case diagrams .................................................................................................. 19
CHAPTER 4 .................................................................................................................. 29
IMPLEMENTATION .................................................................................................... 29
4.1 Home Page ............................................................................................................... 29
4.2 Registration Page ..................................................................................................... 31
4.3 Friend Request ......................................................................................................... 36
CONCLUSION .............................................................................................................. 38
v
REFERENCES .............................................................................................................. 39
vi
Fog Computing, Dept. of CSE
Chapter 1
INTRODUCTION
Social Networking - It's the way the 21st century communicates now. Social networking
is the grouping of individuals into specific groups, like small rural communities or a
neighborhood subdivision. Although social networking is possible in person, especially in
the workplace, universities, and high schools, it is most popular online. This is because
unlike most high schools, colleges, or workplaces, the internet is filled with millions of
individuals who are looking to meet other people.
Social network is the mapping and measuring of relationships and flows between people,
groups, organizations, computers, URLs, and other connected information/knowledge
entities. The nodes in the network are the people and groups while the links show
relationships or flows between the nodes. Social network provides both a visual and a
mathematical analysis of human relationships.
Social Networking Website project itself is a huge project comprising various features
like profile updating, friend’s list organization and various other application to enhance
the overall look and feel of the website. However, in this project I am basically working
on two essential feature or module (PROFILE MANAGEMENT & FRIENDS
ORGANIZATION ).PROFILE MANAGEMENT module maintain the profile of a user
like name, like, dislikes, hobbies, status etc. FRIENDS ORGANIZATION module
maintains the friend list, handles request and sends request to the other user.
Profiles and Friends lists are two key features on social network sites. The third is a
public commenting feature ('Testimonials', 'Comments', 'The Wall'). This feature allows
individuals to comment on their Friends' profiles. These comments are displayed
prominently and visible for anyone who has access to that profile.
We define social network sites as web-based services that allow individuals to construct a
public or semi-public profile within a bounded system, articulate a list of other users with
whom they share a connection, and view and traverse their list of connections and those
made by others within the system. The nature and nomenclature of these connections may
vary from site to site.
Since their introduction, social network sites (SNSs) such as Facebook, attracted millions
of users, many of whom have integrated these sites into their daily practices. As of this
writing, there are hundreds of SNSs, with various technological affordances, supporting a
wide range of interests and practices. While their key technological features are fairly
consistent, the cultures that emerge around SNSs are varied. Most sites support the
maintenance of pre- existing social networks, but others help strangers connect based on
shared interests, political views, or activities. Some sites cater to diverse audiences, while
others attract people based on common language or shared racial, sexual, religious, or
nationality- based identities. Sites also vary in the extent to which they incorporate new
information and communication tools, such as mobile connectivity, blogging, and photo/
video-sharing.
Social networking sites are not only for you to communicate or interact with other people
globally but, this is also one effective way for business promotion. A lot of business
minded people these days are now doing business online and use these social networking
sites to respond to customer queries. It isn't just a social media site used to socialize with
your friends but also, represents a huge pool of information from day to day living.
As of May 2013, almost three quarters (72%) of online U.S. adults use social networking
sites, up from 67% in late 2012. When we first started asking about social networking
sites in February 2005, just 8% of online adults said they used social networking sites.
Today, social networking site use is a major activity for internet users from a wide range
of demographic groups. Younger adults are especially avid adopters, but social
networking continues to grow in popularity for older adults as well. Six out of ten internet
users ages 50-64 are social networking site users, as are 43% of those ages 65 and older.
Although online seniors are less likely than other age groups to use social networking
sites, adoption rates for those 65 and older have tripled in the last four years (from 13% in
the spring of 2009 to 43% now).
The main types of social networking services are those that contain category places (such
as former school year or classmates), means to connect with friends (usually with self-
description pages) and a recommendation system linked to trust. Popular methods now
combine many of Facebook , Google+ , YouTube , LinkedIn , Instagram,
Pinterest, Tumblr and Twitter widely used worldwide; Nexopia in Canada; Badoo,
Bebo, VKontakte (Russia), Delphi (also called Delphi Forums), Draugiem.lv (mostly in
Latvia), Hi5 (Europe), Hyves (mostly in The Netherlands), iWiW (mostly in
Hungary), Nasza-Klasa, Soup (mostly in Poland), Glocals in Switzerland, Skyrock, The
Sphere, StudiVZ (mostly in Germany), Tagged, Tuenti(mostly in Spain), and XING in
parts of Europe; Hi5 and Orkut in South America and Central America; Mxit in Africa;
and Cyworld, Mixi, Orkut, renren, weibo and Wretch in Asia and the Pacific Islands.
Many of these early communities focused on bringing people together to interact with
each other through chat rooms, and encouraged users to share personal information and
ideas via personal web pages by providing easy-to-use publishing tools and free or
inexpensive web space. Some communities - such as Classmates.com - took a different
approach by simply having people link to each other via email addresses. In the late
1990s, user profiles became a central feature of social networking sites, allowing users to
compile lists of "friends" and search for other users with similar interests. New social
networking methods were developed by the end of the 1990s, and many sites began to
develop more advanced features for users to find and manage friends. This newer
According to the definition above, the first recognizable social network site launched in
1997. SixDegrees.com allowed users to create profiles, list their Friends and, beginning in
1998, surf the Friends lists. Each of these features existed in some form before Six
Degrees, of course. Profiles existed on most major dating sites and many community
sites. AIM and ICQ buddy lists supported lists of Friends, although those Friends were
not visible to others.
SixDegrees was the first to combine these features. SixDegrees promoted itself as a tool
to help people connect with and send messages to others. While SixDegrees attracted
millions of users, it failed to become a sustainable business and, in 2000, the service
closed. Looking back, its founder believes that SixDegrees was simply ahead of its time
(A.Weinreich, personal communication, July 11, 2007). While people were already
flocking to the Internet, most did not have extended networks of friends who were online.
Early adopters.com explained that there was little to do after accepting Friend requests,
and most users were not interested in meeting strangers.
Classmates.com allowed people to affiliate with their high school or college and surf the
network for others who were also affiliated, but users could not create profiles or list
Friends until years later.
(O. Wasow, personal communication, August 16, 2007). Likewise, shortly after its launch
in 1999, LiveJournal listed one-directional connections on user pages. LiveJournal’s
creator suspects that he fashioned these Friends after instant messaging buddy lists (B.
Fitzpatrick, personal communication, June 15, 2007)—on LiveJournal, people mark
others as Friends to follow their journals and manage privacy settings. The Korean virtual
worlds site Cyworld was started in 1999 and added SNS features in 2001, independent of
these other sites (see Kim & Yun, this issue). Likewise, when the Swedish web
community LunarStorm refashioned itself as an SNS in 2000, it contained Friends lists,
guestbooks, and diary pages (D. Skog, personal communication, September 24, 2007).
Oracle & SAP are undoubtedly their core strengths. SYSINNOVA InfoTech is an
offshore software services and IT consulting company based in Bangalore, India. As a
committed outsourcing partner and an IT vendor, our goal is to ensure cost effective,
technical excellence and on-time deliveries. While they take care of their end-to-end
programming and consulting needs, their clients focus on core business activities which
correlate directly to their revenues and profitability. Strategic partnership with them gives
their clients the access to latest technology, skilled manpower and scalable team which
ultimately results in lower risk and higher ROI. Our core competency lies in web
technologies, be it Java-J2EE, Spring, Hibernate, Oracle-XML Publisher, DBA tuning,
Oracle Application implementation, PHP and the associated frameworks and CMSs like
Joomla, Drupal, SharePoint (MOSS).
For over 7 years, they have been working with their clients to bring their creative ideas
onto the web. Our typical engagement with our clients is that of an offshore IT vendor.
Today, more than 50 mid sized enterprises and media agencies across the world rely on
them to save their invaluable.
Chapter 2
SYSTEM REQUIREMENT
2.1 Literature Survey
The Web-based social networking services make it possible to connect people who share
interests and activities across political, economic, and geographic borders. Through e-
mail and instant messaging, online communities are created where a gift
economy and reciprocal altruism are encouraged through cooperation. Information is
suited to a gift economy, as information is a non rival good and can be gifted at
practically no cost.
Facebook and other social networking tools are increasingly the object of scholarly
research. Scholars in many fields have begun to investigate the impact of social-
networking sites, investigating how such sites may play into issues
of identity, privacy, social capital, youth culture, and education.
Several websites are beginning to tap into the power of the social networking model
for philanthropy. Such models provide a means for connecting otherwise fragmented
industries and small organizations without the resources to reach a broader audience with
interested users. Social networks are providing a different way for individuals to
communicate digitally. These communities of hypertexts allow for the sharing of
information and ideas, an old concept placed in a digital environment.
In 2011, HCL Technologies conducted research that showed that 50% of British
employers had banned the use of social networking sites/services during office hours.
Server Object
The Server class acts as a wrapper for all server functions for our social networking site.
It essentially act as a link between all of the information such as accounts, account details,
pages, notes, etc to our database. When any other model object such as a page is pulled
from the server, a temporary copy is made. If that temporary copy is changed in any way.
The new version must be sent to the server in order to update the permanent copy. The
reason behind local copies is that all the necessary information for the object is sent over
in one easy-to-use package. Then the update to the database can be done all at once by
sending back that single object. There is no need for multiple functions or a function that
takes a large number of parameters.
Account Object
Each user who wants to use the site must create an account. This is the head class that all
other objects use to determine what a user does and when the user did it. The account’s
information has four purposes: hold the login information, hold friend information, hold
profile information, and hold privacy information with such a large amount of
information to keep track of, the Account class would be very large and difficult to work
with. Therefore to ease the load, the Account class was broken up into three different
classes. There is the actual account class which keeps track of login information and
friend information. It also holds the other two classes within it. Profile information was
outsourced to the Account Details class, and privacy settings were outsourced to the
Privacy Settings class. The only time the Account class needs to be updated is when the
user changes his/her username and/or password. All other settings are handled by the
Account Details and Privacy Settings classes.
An Account Details object is a helper class created whenever a new Account object is
created. The object contains all the information that shows up in the user’s profile. The
user can edit this by modifying his/her profile. Overall, this class has no other purpose but
to be a helper class to its account object.
A Privacy Settings object is the other helper class created whenever a new Account object
is created. This object contains all the privacy settings that a user has, such as who can
view his/her media or custom pages. This class is called any time a user visits a profile or
content created by another user. However, it does not directly interact with the other
model classes, only the view.
Chat Session Object, Event Object, Link Object, Note Object and Page
Object
These objects contain unique information for a particular type of action a user performs.
All of these contain a reference to the account that owns them. Each object is a ”working-
copy” of an object in the Server. Anytime one of these objects is created on the Server, an
entry of its creation is added to the news feed database.
Message Object
A Message object is created when a user composes a new message to be sent to a friend.
After it is confirmed that the friend is located in the database, the Message object adds its
information to the database. When a user checks his or her inbox, a list of messages that
were sent to the user will be shown in descending order of when they were received.
A Wall Post object works very similar to a Message object. The only difference is that the
Wall Post objects are viewable to all friends of the user. Another difference is that a Wall
Post object can hold comments. If a user adds a wall post to his or her own account, their
status will change to the new wall post.
Friends
The most important feature is being able to add and remove friends. In our Social
Networking site, making friends is a fairly straightforward process. Users can type in the
name of a friend in the search bar at the top of their home page. The database is queried
for an account that has the search term contained in the full name, any media files with
the search terms in the description, any pages with the search terms in the titles, any links
with the search terms in the titles, and any notes with the search terms in the title. For
example, User A could search for User B in the search bar. After clicking on User B’s
profile, User A will see a button that says Send Friend Request. Clicking on it will send
an alert to User B that User A wants to be a friend. The friend request will now be in the
friends list of User B, where he/she can either accept it or ignore it, letting it sit there
indefinitely. If user B accepts the request, User A will be added to User B’s friends list
and vice versa. Being friends has its advantages. For example, only friends can chat to
each other. Also, friends can view any part of a profile that is marked as friends only.
Finally, for a user to view his/her friends and incoming friend requests, he/she just clicks
on the friends tab which brings up a frame.
Account Creation
When a user accesses the site for the first time, he/she must create an account before
using any of the site features. The account creation process is broken into three sections.
The first section deals with the login information and is required for the user to fill out.
This includes the email, password, and password confirmation. The purpose behind the
password confirmation is to ensure that the user didn’t accidentally mistype when creating
a password. The second section deals with information about who you are such as name,
location, and gender. Most of these fields are optional except for your name and gender. It
wouldn’t be much of a social network if everyone was named anonymous. The final
section deals with information about the users likes and dislikes, such as interests and
activities. Unlike the other two sections, this section is completely optional. Once the user
clicks create account, a new account, account details, and privacy settings are added to
the server, and the user is brought back to the login page
Privacy Options
Privacy is very important feature for some people, and social networking is no exception
to this. Our system provides three levels of privacy: open, friends only, and closed. A
feature with an open privacy level is public and may be viewed by anyone. By contrast, a
feature with a closed privacy level is completely private and can only be viewed by the
account owner. A feature with a friends only privacy level is fairly self explanatory. By
default, al privacy levels are set to open when a new account is created. To change
privacy levels, the user can click on the options tab on the top menu bar. The current
features with privacy levels are media share, account wall, user pages, notes, and the
overall profile privacy.
The implementation of privacy is a fairly straightforward process. When the user makes
changes to the privacy level, the Privacy Settings object in the account is updated with the
new privacy settings. That working copy is then passed into the update method of the
server, and that queries the database to set the record for that privacy settings object to the
new values. When a user visits another profile, the profile owner is pulled from the
database. A function called can view page() is and is passed the profile owner, the viewer
profile and the page type. In the function the privacy settings object is pulled from the
viewer profile and the page type determines which privacy setting is pulled from the
object. If the setting is open, the function automatically returns true. If the setting is
friends only, the function only returns true if the viewer profile is a friend of the page
owner or if the viewer profile and the page owner are the same. Finally, if the setting is
closed, the function only returns true if the viewer profile is the page owner. Once the
function returns its answer the page will either do one of to things. If the function returns
true, the viewer is allowed to view this page, and it will load normally. If the function
returns false, the viewer is not supposed to view the page, and it will redirect to an error
page.
Chatting
One of the advantages of having friends is the ability to have live communications with
them via chat. When a friend is online, he/she will appear in the chat tab as an available
friend to chat with. To start a chat session, simply click on the name of the friend which
will begin a new chat session. The little bar at the bottom will change from chat disabled
to chatting with friend name as seen in the figure below. Also, the friend receiving the
chat will get a notification that a new chat session has started. Then the two friends can
chat with each other until one or both log out.
The chat feature is a little more complex than others as it requires a combination of
JavaScript and JQuery to work. When a user clicks on a friend name to begin a chat, a
chat request is sent to the database. On every page there is a JQuery function that queries
the server for any new chat requests once a second. It needs to be JQuery, so the client
can request for the server to run a check and return any relevant information. If it was
pure PHP, the page would never load completely, because the page cannot finish loading
until the server is done all preprocessing. The JavaScript portion of JQuery allows the
client to ask the server to do more processing after the page has been loaded.[3] If there is
a new chat request, a pop under is generated, notifying the receiver of the new chat that is
starting or a new pending chat if the user is in another chat. When a user send a message,
another JQuery function is called, to alert the server that it needs to update the chat
session with a new message. At the same time, another JQuery function is running to ask
the server once a second if the chat session has been updated. Overall, it is a lot of the
client asking the server to send over any changes that exist.
Messaging
Unlike with chatting, users can send a message to any other user. For user A to send a
message to user B, he/she simply goes to the message center tab and clicks compose
message. He then fills out the form as shown in the figure below with the email of the
recipient, the message title, and the message content. The new message will then be in
User B’s inbox in the message center.
Messaging is implemented by storing a record of the message in the server. First a
message object is constructed that takes in the to and from accounts, the message body,
and the date it was sent. The message body is retrieved from a user submitted form, the
from account is retrieved from the user session, and the receiver account is retrieved from
the recipient email address. The receiver account is validated, to ensure the sender didn’t
try to send a message to a non-existent receiver. Finally, the new message is stored in the
server. Retrieving messages sent to the user is a simple method of querying the server for
any messages that have been sent to the user, and this is done by checking the receiver id
of each message against the account id of the user. Any matches are returned to the inbox
of the user as shown in the figure below.
Events
In addition to messaging your friends, social networking sites are a great place to alert
your friends of important upcoming events. For example, if a user is throwing a birthday
party, he/she could create an event an invite friends he/she wants to attend or simply
make it a public for anyone. The process of creating an event is as simple as filling out a
form which looks like this.
After filling out the form, the user will be brought to the standard confirmation page.
He/she can then view the new event by clicking on the Events tab and clicking on the new
event. If the user wishes to edit some information about the event, he/she can click on the
edit link next to the event where a similar form to creating an event will be displayed with
all the fields populated with the current event information.
Storing the event is a fairly straightforward process. Once the form data is submitted, a
new Event object is created storing the Account that created the event as well as all the
information sent along with the form. That new event is then sent to the server, which
creates a database query and stores the fields of the event object into equivalent fields of
the event database table. Retrieving events is also a fairly straightforward process. A
MySQL query is called to pull the contents of the event into an array, and that array is
used to instantiate a new working copy of the event in an Event object.
Media Uploading
As people use their social networking account, they will want to be able to upload funny
or interesting images, video, music, etc., to share with their friends. The media upload
section will be located at the media tab, where users are able to specify a file to upload as
well as provide a short description of the file to be uploaded. In order to prevent users
from uploading potentially malicious files such as executables, only certain file extensions
are supported. These allowed extensions cover popular image extensions such as png, jpg,
gif, and bitmap, video extensions wmv and avi, audio extensions mp3, wma, and wav,
and some document files including txt, rtf, doc, and pdf.
The inner workings of this uploading process are surprisingly simple, since the HTTP
server takes care of requesting the file from the client automatically. After the user clicks
upload, the file is sent to the server and stored in a temporary location. Through PHP all
information about these temporary files can be accessed through the $ FILES variable.
The temporary location is stored in that variable and can be used to pull the file name and
file extension.[1] That extension is then checked against an array of allowed extensions. If
the extension is in the list, the file is then moved to a permanent location in the media
folder under a subfolder for the user’s account. If the extension is not on the list, it is left
in the temporary folder where it will be automatically deleted by the server once the php
script completes.
Other features
All the other features, such as the wall pages, and notes are fairly similar. Their main
purpose is to add additional places to have places for additional content. All are
created using similar methods, and are stored similarly but are used for different
purposes.
1. Wall
The wall is a place where the account owner can express his current feeling or thoughts
with a wall status. Other users can add their thoughts by creating wall posts that show up
below the status. It is basically a way for many users to communicate publicly or simply
leave their thoughts about each other
2. Notes
Notes are very similar to wall posts with one major exception. Unlike wall posts which
can be created by anyone, only the account owner can create notes. It’s main purpose if
for the account owner to create reminders for him/herself, or create announcements for
any other users to see.
Secure access of confidential data by user name and password. This application is
secure for every kind of its users, because if any user logout from any session then
nobody will be able to access his profile without knowing his confidential
password.
24 X 7 availability
The database used here is robust, reliable & fast. So users will have to wait for the
output very short time.
There is no case of redundancy in the database so it will not take extra memory
space.
Username & password are sent to the users via email after registration.
MySQL
MySQL is a popular choice of database for use in web applications, and is a central
component of the widely used LAMP open source web application software stack (and
MySQL can be built and installed manually from source code, but this can be tedious so it
is more commonly installed from a binary package unless special customizations are
required. On most Linux distributions the package management system can download and
install MySQL with minimal effort, though further configuration is often required to
adjust security and optimization settings.
There are however limits to how far performance can scale on a single server ('scaling
up'), so on larger scales, multi-server MySQL ('scaling out') deployments are required to
provide improved performance and reliability. A typical high-end configuration can
include a powerful master database which handles data write operations and
is replicated to multiple slaves that handle all read operations. The master server
synchronizes continually with its slaves so in the event of failure a slave can be promoted
to become the new master, minimizing downtime. Further improvements in performance
can be achieved by caching the results from database queries in memory
using memcached, or breaking down a database into smaller chunks called shards which
can be spread across a number of distributed server clusters.
Language: PHP
PHP is a scripting language designed to fill the gap between SSI (Server Side Includes)
and Perl, intended for the web environment. Its principal application is the
implementation of web pages having dynamic content. PHP has gained quite a following
in recent times, and it is one of the frontrunners in the Open Source software movement.
Its popularity derives from its C-like syntax, and its simplicity. PHP is currently divided
into two major versions: PHP 4 and PHP 5, although PHP 4 is deprecated and is no longer
developed or supplied with critical bug fixes. PHP 6 is currently under development.
PHP was designed by Rasmus Lerdorf to display his resume online and to collect data
from his visitors.
PHP allows a static webpage to become dynamic. "PHP" is an acronym that stands for
"PHP: Hypertext Preprocessor". The word "Preprocessor" means that PHP makes changes
before the HTML page is created. This enables developers to create powerful applications
which can publish a blog, remotely control hardware, or run a powerful website such as
Wikipedia or Wikibooks. Of course, to accomplish something such as this, you need a
database application such as MySQL.
PHP code is interpreted by a web server with a PHP processor module, which generates
the resulting web page: PHP commands can be embedded directly into an HTML source
document rather than calling an external file to process data. It has also evolved to include
a interface capability and can be used in standalone graphical applications.
The PHP language was originally implemented as an interpreter, and this is still the most
popular implementation. Several compilers have been developed which decouple the PHP
language from the interpreter. Advantages of compilation include better execution speed,
static analysis, and improved interoperability with code written in other languages.
PHP includes free and open source libraries with the core build. PHP is a
fundamentally Internet-aware system with modules built in for accessing File Transfer
Protocol (FTP) servers, many database servers, embedded SQL libraries such as
embedded PostgreSQL, MySQL, Microsoft SQL Server and SQLite, LDAP servers, and
others. Many functions familiar to C programmers such as those in the studio family are
available in the standard PHP build.
databases, tables, columns, relations, indexes, users, permissions, etc.) can be performed
via the user interface, while you still have the ability to directly execute any SQL
statement.
1. Web interface
2. MySQL database management
3. Import data from SQL
4. Creating complex queries using Query-by-Example (QBE)
5. Searching globally in a database or a subset of it
Chapter 3
DESIGN SPECIFICATIONS
This module provides functionalities for those people who wants to open an account.
Applicants can post their views with personal and professional details. They can also
update the profile as frequently as required. The member can also browse through the
friends profile available. Members can also get message alerts when their friends message
them.
Profile Module
This module provides functionalities related to members profile. Logged users can see
their details and if they wish to change any of their information they can edit it.
Admin Module
Data flow diagrams model the flow of data into, through, and out of an information
system:
• show the processes that change or transform data
• show the movement of data between processes
• represent a system as a network of processes which transform data flowing between
them
The user screen flow shows what a user of the community will see. After successfully
logging on, the user will be given various links (such as search users, search boards, view
mail, etc.), and be able to select options from there, or go back to their home.
A use case diagram is a graphic depiction of the interactions among the elements of a
system. A use case is a methodology used in system analysis to identify, clarify, and
organize system requirements. In this context, the term "system" refers to something
being developed or operated, such as a mail-order product sales and service Web site. Use
case diagrams are employed in UML (Unified Modeling Language), a standard notation
for the modeling of real-world objects and systems.
payment processing, and customer relations. A use case diagram contains four
components. The boundary, which defines the system of interest in relation to the world
around it.
The actors, usually individuals involved with the system defined according to their
roles.
The use cases, which are the specific roles played by the actors within and around the
system.
The relationships between and among the actors and the use cases.
Login/Registration
<<include>>
Get email to confirm registration
Regester for login
<<include>>
Login Validate user
User
<<include>>
Get password email
Request for forgetted passward
<<include>>
H
ome Page
Wall Page
User
Reply to Message
Blog Page
Profile Page
User
Add friend
User
Delete friends
Photo Page
Add/Delete photo
User
• The context diagram shows the interaction of the system with its environment in terms
of data flows
• The context diagram defines the boundary of the system (the scope of the system)
• Only the data flows which leave the system and the data flows which come from outside
the system are shown.
0 Level DFD: A level 0 DFD, also called a fundamental system model or context
diagram represents the entire software element as a single bubble with input and output
data indicated by incoming and outgoing arrows, respectively.
1 Level DFD: This level of DFD provide more detailed structure. It provides a
detailed view of requirements and flow of data from 1 bubble to another.
The entity relationship model is a high level data model. It is based on a perception of a
real world that consists of a collection of basic objects, called entities, and of relationship
among these objects. It was developed to facilitate database design by allowing
specification of an enterprise schema, which represent the overall logical structure of a
database.
Entity: An entity is an object that has its existence in the real world. It includes all those
“things” about which data is collected. An entity may be a tangible object such as a
student, a place or a part. It may also be non-tangible such as an event, a job title or a
customer account. For example, if we say that a customer buys goods, it means customer
and goods are entities. Diagrammatically, entities are represented in rectangles.
An Entity Set: It is a set of entities of the same type that share the same properties, or
attributes. The set of all persons who are customers at a given bank, example, can be
defined as the entity set customer.
Attributes: Attributes are units that describe the characteristics or properties of entities.
In a database, entities are represented by tables and attributes by columns. For example, a
customer entity might have numerous attributes such as code, name and addresses.
Similarly, the goods entity may have attributes like code and price. They are drawn in
elliptical shapes along with the entity rectangles. The entity relationship diagram of
mailing system is drawn on the next page:
3.2.4 Database
Data base is used to store the relevant information of the individuals. A database is a
collection of rows and columns in which rows indicates the tuple and column indicates
the domain of table. Database design is the process of producing a detailed data model of
a database. This logical data model contains all the needed logical and physical design
choices and physical storage parameters. Need to generate a design in a data definition
language, which can then be used to create a database. A fully attributed data model
contains detailed attributes for each entity. The term database design can be used to
describe many different parts of the design of an overall database system. Principally, and
most correctly, it can be thought of the logical design of the relation of the base data
structures used to store the data. In the relational model these are the classes and named
relationships. However, the term database design could also be used to apply to overall
process of designing, not just the base data structure, but also the forms and queries used
as part of the overall database application within the database management system
(DBMS).
CHAPTER 4
IMPLEMENTATION
4.1 Home Page
<?php
session_start();
?>
<style>
.box10{padding:10px;text-shadow: 10px 5px 5px skyblue;}
</style>
<?php
if(isset($_SESSION['info']['email_id']))
{
header('location:profile.php');
}
else{
?>
<div style="height:100%;width:100%;float:left;background:fixed;">
<div style="height:14%;width:100%;background:lime fixed 0% 0%/100% 100%;float:left;">
<marquee>
<span style="font-family:Poor Richard ;color:white;font-size:50px;">
<B>.......WELCOME TO TALK-WALK......</B>
</span>
</marquee>
</div>
<div style="height:100%;width:100%;background:url('picture/wallpaper_1068.jpg')no-repeat
fixed 100% 100%;">
<div style="height:80%;width:50%;margin:auto;PADDING:12%;">
<form action="action.php" method="post" enctype="multipart/form-data">
<table style="height:80%;width:100%;COLOR:LIME;background:snow;border:2px solid
lime;">
<th style="height:20px;WIDTH:10%;color:lime;"><span style="font-family:Segoe Print ;font-
size:20px;color:lime"><div class="box10">LOGIN HERE..</div> </span></th>
<td style="height:20px;width:40%;"><a href="signup.php"><div style="float:right"><input
type="button" class="button" value="SIGN_UP" name="signup"
style="height:40px;width:100%;background:lime;color:white;FONT-SIZE:16px;
"/></div>
</a></td>
<TR>
<th><span style="font-family:Georgia;font-size:20px;COLOR:LIME">EMAIL_ID</span></th>
<TH><input type="email" value="" name="email_id" required placeholder=" enter your
email/number" pattern="[A-Za-z0-9.,@#]+" style="height:40px;width:100%;border:2px groove
lime;border-radius:25px;font-size:20px;font-family:Georgia;style:margin:10px;"></TH>
</TR>
<TR>
<th><span style="font-family:Georgia;font-
size:20px;COLOR:LIME">PASSWORD</span></th>
<TH>
if(isset($_SESSION['error'])){?>
<span style="font-family:Georgia;font-size:20px;COLOR:LIME"><?php echo
$_SESSION['error']; ?> </span>
<?php unset($_SESSION['error']);
}
?>
</th>
</tr>
<tr>
<td style="height:20px;width:40%;" colspan="2"><div style="text-align:center"><input
type="submit" value="LOGIN" name="login"
style="height:40px;width:30%;background:lime;color:white;FONT-SIZE:16px;
" class="button"/></div></td>
</tr>
</table>
</form>
</div>
</div>
</div>
.<style>
button {
background-color: #54bada;
border-radius: 8px;
box-shadow: 5px 5px 5px #9e9e9e;
color: #fff;
height: 45px;
width: 125px;
}
</style>
<?php
}
?>
session_start();
?>
<div style="height:740px;width:100%;">
<script src="jquery-1.10.2.js"></script>
<script src="jquery-ui.js"></script>
<script>
function passa()
var a=document.getElementById('pass').value;
var b=a.length;
if(b>12)
</script>
<script>
$(function() {
$( "#dob" ).datepicker({
numberOfMonths: 3,
showButtonPanel: true
});
});
</script>
<style>
</style>
<div style="height:14%;width:100%;background:lime;float:left;">
<marquee>
<B>.......WELCOME TO TALK-WALK......</B>
</span>
</marquee>
</div>
<div style="height:100%;width:100%;background-image:url('picture/wallpaper_1068.jpg');">
<div style="height:80%;width:50%;margin:auto;PADDING:10%;">
<TR>
<th><span style="font-family:Georgia;font-
size:20px;COLOR:LIME">FIRST_NAME</span></th>
<th><span style="font-family:Georgia;font-
size:20px;COLOR:LIME">MIDDLE_NAME</span></th>
<th><span style="font-family:Georgia;font-
size:20px;COLOR:LIME">LAST_NAME</span></th>
<th><span style="font-family:Georgia;font-size:20px;COLOR:LIME">DOB</span></th>
<th><span style="font-family:Georgia;font-size:20px;COLOR:LIME">GENDER</span></th>
</select></td>
</TR><TR>
<th><span style="font-family:Georgia;font-size:20px;COLOR:LIME">EMAIL_ID</span></th>
</TR><TR><th><span style="font-family:Georgia;font-
size:20px;COLOR:LIME">NEW_PASSWORD</span></th>
<tr><th colspan="2">
<?php
if(isset($_SESSION['error']))
{?>
<?php unset($_SESSION['error']);}?>
</th></tr><tr>
</tr>
</table>
</form>
</div>
</div>
</div>
<style>
.button {
background-color: #54bada;
border-radius: 8px;
color: #fff;
height: 45px;
width: 125px;
</style>
</div>
<?php
while($res=mysql_fetch_array($sq))
{
$from_user_id=$res['from_user'];
$sql="select * from signup where id='$from_user_id'";
$qry=mysql_query($sql);
$dataji=mysql_fetch_array($qry);
?>
<div style="height:29%;width:100%;float:left;">
<div style="height:100%;width:20%;float:left;BORDER:3PX SOLID BLACK;background-
image:url('picture/<?php echo $dataji['profile_picture'];?>');background-size:100% 100%;">
<a href="view_profile.php?id=<?php echo $dataji['id'];?>">
<input type="button" name="searchprofile" value="VIEW_PROFILE"
style="height:30px;width:100%;font-size:15px;background:lime;color:white;float:left;margin-
top:49%;"></a>
</div>
<div style="height:100%;width:50%;float:left;"><span style="font-family:Georgia;font-
size:20px;COLOR:lime"><?php echo $dataji['first_name']." ".$dataji['middle_name']."
".$dataji['last_name']."<br>"."<br>";
echo"WORKS AT"." " .$dataji['work']."<br>";
echo"LIVES_IN" ." ".$dataji['lives_in']."<br>";
?>
</span>
<?php
}
?>
<a href="logout.php"><span style="font-size:30px;color:lime">LOGOUT</a></div>
CONCLUSION
While developing the system a conscious effort has been made to create and develop a
software package, making use of available tools, techniques and resources – that would
generate a proper system for ONLINE SOCIAL NETWORKING.
While making the system, an eye has been kept on making it as user-friendly. As such
one may hope that the system will be acceptable to any user and will adequately meet
his/her needs. As in case of any system development process where there are a number of
short comings, there have been some shortcomings in the development of this system
also.
There are some of the areas of improvement which couldn’t be implemented due to time
constraints. One such feature was online chat where members can chat with his friends
through this website. I also couldn't implement the scrap book and the selling item page
for now but we still have two months of internship left in the company so defiantly we
will do it in coming months.
REFERENCES
[3] Indira Jain Social networking trends New Delhi: The Times Of India
[4] Matas, Alina, “SNSs becomes an on-line opportunity for employers and students”, The
Washington Post, Nov. 7, 1993, pg. H2
[5] ”Building a Career Path”, The Washington Post, Jan. 19, 1998, pg. F05