NotesManager PHP Final
NotesManager PHP Final
ABSTRACT
LIST OF FIGURES
LIST OF TABLES
I 1. INTRODUCTION
1.1 OVERVIEW
1.4.1.2 JAVASCRIPT
APPENDICES
REFERENCES
ABSTRACT
This is a web based online notes management for individual users who want to track
their personal and official notes collectively in singe place. In this web portal user can
register, login and add notes with or without uploading contents in pdf, image or other
formats. Users are allowed to add their content after approval by admin during registration.
The modules included are create notes, add notes with version, create notes with
document upload, add notes with document upload (2nd, 3rd version, etc) and show notes
[All records], show notes with all version line by line [selected records] and delete notes.
Admin is the person who maintains the website. The admin view the users and
approve them; then only they can login to the web site. The notes can be also be viewed by
users. Various reports are provided in both administrator and user modules for easy
transaction processing. In this way this project increases the interaction between the admin
and users and also helps then to easily search and view notes.
SYSTEM ANALYSIS
EXISTING SYSTEM
The current system is managing all the transactions with offline software such as
notepad, excel or word packages. The users need to keep in memory where the notes aer
saved. In addition, version information cannot be maintained if they store in simple text
format made in notepad like software. Related contents cannot be uploaded and stored in
single related place. Searching also tedious if more versions of same notes need to be
maintained.
The proposed system is designed considering all the drawbacks listed in the existing
system. As there is online web site for all users, it saves lot of time for every transaction.
The project is used by the user, who can maintain the notes as well as version information
for them. The user can visit the website and they can search for the required notes at any
time. Searching is easier even if more versions of same notes are maintained.
ADVANTAGE OF PROPOSED SYSTEM
The security is more in the proposed system since approved users can start
Easy to use options are provided in the web page and giving input is fast.
The feasibility study deals with all the analysis that takes up in developing the
project. Each structure has to be thought of in the developing of the project, as it has to serve
the end user in a user-friendly manner. One must know the type of information to be
gathered and the system analysis consist of collecting, Organizing and evaluating facts
about a system and its environment.
ECONOMICAL FEASIBILITY
OPERATIONAL FEASIBILITY
TECHNICAL FEASIBILITY
ECONOMIC FEASIBILITY
The organization has to buy a personal computer with a keyboard and a mouse, this
is a direct cost. There are many direct benefits of covering the manual system to
computerized system. The user can be given responses on asking questions, justification of
any capital outlay is that it will reduce expenditure or improve the quality of service to the
user. The users who have basic knowledge about Microsoft technologies can use this service
by accessing the service provided in the web site.
OPERATIONAL FEASIBILITY
The Proposed system accessing process to solves problems what occurred in existing
system. The current day-to-day operations of the organization can be fit into this system.
Mainly operational feasibility should include on analysis of how the proposed system will
affects the organizational structures and procedures.
The proposed system requires less human interaction and anybody who has the basic
computer devices can access these services and operate on their needed part of the services
to get the services that are needed by the user.
TECHNICAL FEASIBILITY
The cost and benefit analysis may be concluded that computerized system is
favorable in today’s fast moving world. The assessment of technical feasibility must be
based on an outline design of the system requirements in terms of input, output, files,
programs and procedure.
The project aims to provide the faster notes information maintenance using the web
application and to reduce the difficulties involved in information handling that are given by
users of the website. The current system aims to overcome the problems of the existing
system. The current system is to reduce the technical skill requirements so that more number
of users can access the application
SYSTEM SPECIFICATION
HARDWARE REQUIREMENTS
This section gives the details and specification of the hardware on which the system
is expected to work.
Processor : Intel Dual Core
RAM : 8 GB RAM
Monitor : 17” Color
Hard disk : 1TB
Keyboard : Standard102 keys
Mouse : Optical Scroll
SOFTWARE REQUIREMENTS
This section gives the details of the software that are used for the development.
HTML
Features of HTML5
The <canvas>element is used to allow a web developer to render graphics on the fly. As
with video, there is no need for a plug-in.
Web Workers is certain web application use heavy
Scripts to perform function. Web Workers use separate background threads for
processing.
Application caches is used to Web pages will start storing more and more information
locally on the visitors computer.it works like cookies, but where cookies are small ,the
new feature allows larger files.
Geo location is best known for use on mobile devices, geo location is coming with
HTML5.
Support for local storage.
New form controls, like calendar, date, time, email, URL search.
New content-specific element, like <article>, <footer>, <header>, <new>, <section>.
The video and audio element for media playback.
CSS
CSS Stands for "Cascading Style Sheet". Cascading style sheets are used to format
the layout of Web pages. They can be used to define text styles, table sizes, and other
aspects of web pages that previously could only be defined in a page's HTML. CSS helps
Web developers create a uniform look across several pages of a Web site. Instead of
defining the style of each table and each block of text within a page's HTML, commonly
used styles need to be defined only once in a CSS document. Once the style is defined in
cascading style sheet, it can be used by any page that references the CSS file. Plus, CSS
makes it easy to change styles across several pages at once. For example, a Web developer
may want to increase the default text size from 10pt to 12pt for fifty pages of a Web site. If
the pages all reference the same style sheet, the text size only needs to be changed on the
style sheet and all the pages will show the larger text.
JAVASCRIPT
PHP (Hypertext Pre Processor) is a popularly used server side scripting language that
is basically designed for the web development to produce dynamic web pages.
PHP code is interpreted by a web server with a PHP processor module, which
generates the resulting Web Pages. PHP commands can be embedded directly into an
HTML sources document rather than calling an external file to process data. It has also
evolved to include a commend line interface capability and can be used in standalone
graphical applications.
Advantages of PHP
PHP provides a more secured website due to high quality encryption scheme.
PHP applications provide a fast browsing experience due to the reason that all
the processing is performed at the server side.
PHP is freely available which helps to cut the cost of development to a
considerable extent.
It provides compatibility with almost every web server and operating system the
application is laid on.
The load of PHP developed sites is also less as PHP is a light weighted language
for web-site development.
Features of PHP
The MySQL server software itself and the client libraries use dual-licensing
distribution. They are offered under GPL version 2, beginning from 28 June 2000(Which
in2009 has been extended with a FLOSS License Exception) or to use a proprietary license.
Support can be obtained from the official manual. Free support additionally is
available in different IRC channels and forums. Oracle offers paid support via its MySQL
Enterprise products. They differ in the scope of services and in price. Additionally, a
number of third party organizations exist to provide it “performs extremely well in the
average case” and that the “developer interface are there, and the documentation is very,
very good”. It has also been tested to be a “fast, stable and true multi-user, multi-threaded
SQL database server”.
FEATURES
MySQL is offered fewer than two different editions: the open source MySQL
Community Server and the proprietary Enterprise Server.
PROBLEM DEFINITION
By considering all the drawbacks of the existing system the new system is designed.
All the disadvantages of an existing system are overcomes by this new proposed system.
Users are no need to spend more time for notes management. The user can maintain the
version information any time. Viewing the notes details and their versions are easier to
users. This website provides a user friendly environment to the users and website admin.
ADMINISTRATION MODULE
LOGIN
In this module admin logins to the website using username and password given. The
details are taken from ‘admin’ table.
VIEW USERS
In this module admin views the user details such as id, name, address, city, email id
and mobile number. These details are taken from ‘users’ table.
APPROVE USERS
In this module admin view the users, select user id and approve the user so that he or
she can login to the web site for notes management.
VIEW NOTES
Admin can view the notes added by users here. The details are taken from ‘Notes’
table.
CHANGE PASSWORD
In this module admin can change the password by giving current and new password.
The details are updated in ‘admin’ table.
USER MODULE
USER REGISTRATION
In this module users are allowed to register their information in this website. These
details contain id, name, address, city, email id, mobile number and password which are
saved in ‘users’ table.
CREATE NOTES
In this module users add notes like id, title, description and date of entry. These
details are saved in ‘Notes’ table.
ADD NOTES
In this module users add notes like id, serial number, title, description and date of
entry. These details are saved in ‘Notes’ table with previous note id so that it is saved as
successive versions of the previous related note.
In this module users add notes like id, title, description and date of entry along with
document content which are uploaded using file upload control. These details are saved in
‘NotesUpload’ table.
In this module users add notes like id, serial number, title, description and date of
entry along with document content which are uploaded using file upload control. These
details are saved in ‘NotesUpload’ table with previous note id so that it is saved as
successive versions of the previous related note.
VIEW NOTES
Users can view the notes added by users here. The details are taken from ‘Notes’
table. Search option is also provided.
Users can view the notes with file contents uploaded by users here. The details are
taken from ‘NotesUpload’ table. Search option is also provided.
CHANGE PASSWORD
In this module user can change the password by giving current and new password.
The details are updated in ‘users’ table.
SYSTEM FLOW DIAGRAM
NOTES MANAGER
ADMIN CUSTOMER
LEVEL 0
CHANGE PASSWORD ADD/VIEW NOTES
Admin UserPASSWORD
CHANGE
SIGN OUT
LEVEL 1
View/Approve Users
Users
View Notes
Notes
Admin
Change Password
Admin
Login
Admin
View Notes
Upload
Registration
Users
Login
User
Add Note
Notes
View Notes
The most important consideration in designing the database is how information will
be used. The main objectives of designing a database are:
Data Integration
In a database, information from several files are coordinated, accessed and operated
upon as through it is in a single file. Logically, the information are centralized, physically,
the data may be located on different devices, connected through data communication
facilities.
Data Integrity
Data integrity means storing all data in one place only and how each application to
access it. This approach results in more consistent information, one update being sufficient
to achieve a new record status for all applications, which use it. This leads to less data
redundancy; data items need not be duplicated; a reduction in the direct access storage
requirement.
Data Independence
The tables needed for each module were designed and the specification of each and
every column was given based on the records and details collected during record
specification of the system study.
TABLE STRUCTURE
The design of the input should be made the input as the over to the numerous
networks in the reliable area that should be passed as the installation in the remote
network. It has the following constraints in the input database.
The system takes input from the users, processes it and produces an output. Input
design is link that ties the information system into the world of its users. The system should
be user-friendly to gain appropriate information to the user. The decisions made during the
input design are the project gives the low time consumption to make the sensitive
application made simple. When applying the project it provides the low man-power attrition
with the reasonable output.
The amount of fund that the company can spend into the research and development
of the system is limited. The expenditures must be justified. Thus the developed system as
well within the budget and this was achieved because most of the technologies used are
freely available. Only the customized products had to be purchased.
Input data of a system may not be necessarily is raw data captured in the system
from scratch. These can also be the output of another system or subsystem. The design of
input covers all the phases of input from the creation of initial data to actual entering of the
data to the system for processing. The design of inputs involves identifying the data needed,
specifying the characteristics of each data item, capturing and preparing data fro computer
processing and ensuring correctness of data.
Input design is the process of converting user-originated inputs to a computer-based
format. Input design is one of the most expensive phases of the operation of computerized
system and is often the major problem of a system.
Any Ambiguity in input leads to a total fault in output. The goal of designing the input
data is to make data entry as easy and error free as possible.
In the project, the forms are designed with easy to use options such as selecting the
master records through dropdown list in transaction forms. The coding is being done such
that proper validations are made to get the perfect input. No error inputs are accepted. The
end users need not to give the id themselves.
OUTPUT DESIGN
Output design generally refers to the results and information that are generated by
the system for many end-users; it should be understandable with the enhanced format.
The Output of the software is used to make the remote installation of the new
software in the system and, it is awake the immediate alert to the system that should be
enhanced it as the input to the system. Output is the main reason for developing the system
and the basis on which they evaluate the usefulness of the application.
Computer output is the most important direct source of information to the user
output design deals with form design efficient output design should improve the interfacing
with user.
When designing output, system analysis accomplishes more things like, to determine
what applications, websites or documents whether blocked or allowed. Allowing should be
in various options. The output is designed in such a way that it is attractive, convenient and
informative.
Forms are designed in PHP with various features, which make the console output
more pleasing. As the outputs are the most important sources of information to the users,
better design should improve the system’s relationships with user and also will help in
decision-making. Form design elaborates the way output is presented and the layout
available for capturing information.
SYSTEM TESTING
After the source code has been completed, documented as related data structures.
Completed the project has to undergo testing and validation where there is subtitle and
definite attempt to get errors.
The project developer treads lightly, designing and execution test that will
demonstrates that the program works rather than uncovering errors, unfortunately errors will
be present and if the project developer doesn’t find them, the user will find out.
The project developer is always responsible for testing the individual units i.e.
modules of the program. In many cases developer also conducts integration testing i.e. the
testing step that leads to the construction of the complete program structure.
This project has undergone the following testing procedures to ensure its correctness.
Unit testing
User Acceptance Testing
Integration Testing
UNIT TESTING
In unit testing, we have to test the programs making up the system. For this reason,
Unit testing sometimes called as Program testing. The software units in a system are the
modules and routines that are assembled and integrated to perform a specific function, Unit
testing first on the modules independently of one another, to locate errors. This enables, to
detect errors in coding and logic that are contained with the module alone. The testing was
carried out during programming stage itself.
In these testing procedures the project is given to the customer to test whether all
requirements have been fulfilled and after the user is fully satisfied. The project is perfectly
ready. If the user makes request for any change and if they found any errors those all errors
has to be taken into consideration and to be correct it to make a project a perfect project.
INTEGRATION TESTING
Integration testing is done to test if the individual modules work together as one
single unit. In integration testing, the individual modules that are to be integrated are
available for testing. Thus the manual test data that used to test the interfaces replaced by
that which in generated automatically from the various modules. It can be used for testing
how the modules would actually interact with the proposed system. The modules are
integrated and tested to reveal the problem interfaces.
SYSTEM IMPLEMENTATION
When the initial design was done for the system, the client was consulted for the
acceptance of the design so that further proceedings of the system development can be
carried on. After the development of the system a demonstration was given to them about
the working of the system. The aim of the system illustration was to identify any
malfunction of the system.
After the management of the system was approved the system implemented in the
concern, initially the system was run parallel with existing manual system. The system has
been tested with live data and has proved to be error free and user friendly.
This process is uses to verify and identify any logical mess working of the system by
feeding various combinations of test data. After the approval of the system by both end user
and management the system was implemented. System implementation is made up of many
activities. The six major activities are as follows.
CODING
Coding is the process of whereby the physical design specifications created by the
analysis team turned into working computer code by the programming team.
TESTING
Once the coding process is begin and proceed in parallel, as each program module
can be tested.
INSTALLATION
Installation is the process during which the current system is replaced by the new
system. This includes conversion of existing data, software, and documentation and work
procedures to those consistent with the new system.
DOCUMENTATION
It is result from the installation process, user guides provides the information of how
the use the system and its flow.
Training plan is a strategy for training user so they quickly learn to the new system.
The development of the training plan probably began earlier in the project.
.
CONCLUSION AND FUTURE ENHANCEMENTS
CONCLUSION
Thus the project is developed with the satisfaction of end users like admin and users
in notes management. The entire user interface is made easier to use. The multiple types of
notes and their versions are available through single website. It comes to know that one the
main advantages for users. By using this website the admin can increase the users efficiency
in huge than previous system.
The website becomes useful if the following enhancements are made in upcoming days.
SAMPLE CODING
ADD NOTE
<?php
session_start();
?>
<html>
<head>
<link rel="stylesheet" href="css/bootstrap.min.css">
<script src="css/jquery.min.js"></script>
<script src="css/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/all.css">
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<?php
include('HeaderUser.php');
include('Db.php');
?>
<center>
<h4>NEW NOTE DETAILS</h4>
</center>
<tr>
<td></td> <td><input type="submit" name="btnSubmit"
value="Submit" class="btn_submit" style="width:152px;" /></td>
</tr>
</table>
</center>
<center>
<table border='1' cellspacing='0' class="table table-bordered table-hover
table-striped table-condensed;">
<tr>
<th>Note Id</th>
<th>User Id</th>
<th>Entry Date</th>
<th>Title</th>
<th>Description</th>
<th>Delete</th>
</tr>
<?php
$query= mysql_query("Select * From Notes Where UserId='" .
$_SESSION['userid'] . "'", $con);
while ($row = mysql_fetch_array($query))
{
echo "<tr>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['NoteId']
. "</td>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['UserId']
. "</td>";
echo "<td style='padding-top:40px' valign='middle'>" .
$row['EntryDate'] . "</td>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['Title'] .
"</td>";
echo "<td style='padding-top:40px' valign='middle'>" .
$row['Description'] . "</td>";
echo "<td style='padding-top:40px' valign='middle'><a
href='DeleteNote.php?code=" . $row['NoteId'] . "' class='btn_delete'/>Delete</a></td>";
echo "</tr>";
}
?>
</table>
</center>
</form></body></html>
ADD NOTE VERSION
<?php
session_start();
?>
<html>
<head>
<link rel="stylesheet" href="css/bootstrap.min.css">
<script src="css/jquery.min.js"></script>
<script src="css/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/all.css">
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<?php
include('HeaderUser.php');
include('Db.php');
$query= mysql_query("SELECT coalesce(max(SNo),0)+1 as cnt FROM
NotesVersion", $con);
$row = mysql_fetch_array($query);
$Id=$row['cnt'];
?>
<center>
<h4>CREATE NOTE VERSION DETAILS</h4>
</center>
<tr>
<td align="right">Note Id:</td>
<td>
<select name="cboNoteId">
<?php
$sql="SELECT NoteId FROM Notes
Where UserId='" . $_SESSION['userid'] . "' Order By NoteId";
$tot=mysql_query($sql,$con);
while($row = mysql_fetch_array($tot) )
{
echo "<option>" .
$row['NoteId'] . "</option>";
}
?>
</select>
</td>
</tr>
<tr>
<td align="right">Title:</td> <td><input type="text"
name="txtTitle" Required/></td>
</tr>
<tr>
<td align="right">Description:</td> <td><textarea
name="txtDesc" rows='5' cols='40' Required></textarea></td>
</tr>
<tr>
<td></td> <td><input type="submit" name="btnSubmit"
value="Submit" class="btn_submit" style="width:152px;" /></td>
</tr>
</table>
</center>
<center>
<table border='1' cellspacing='0' class="table table-bordered table-hover
table-striped table-condensed;">
<tr>
<th>S.No</th>
<th>Note Id</th>
<th>User Id</th>
<th>Entry Date</th>
<th>Title</th>
<th>Description</th>
<th>Delete</th>
</tr>
<?php
$query= mysql_query("Select * From NotesVersion Where UserId='" .
$_SESSION['userid'] . "' Order By SNo", $con);
while ($row = mysql_fetch_array($query))
{
echo "<tr>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['SNo'] .
"</td>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['NoteId']
. "</td>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['UserId']
. "</td>";
echo "<td style='padding-top:40px' valign='middle'>" .
$row['EntryDate'] . "</td>";
echo "<td style='padding-top:40px' valign='middle'>" . $row['Title'] .
"</td>";
echo "<td style='padding-top:40px' valign='middle'>" .
$row['Description'] . "</td>";
echo "<td style='padding-top:40px' valign='middle'><a
href='DeleteNoteVersion.php?code=" . $row['SNo'] . "'
class='btn_delete'/>Delete</a></td>";
echo "</tr>";
}
?>
</table>
</center>
</form>
</body>
</html>
SAMPLE SCREENS
HOME PAGE
ADMIN LOGIN
ADMIN OPTIONS
VIEW USERS
APPROVE USER
VIEW NOTES
CHANGE PASSWORD (ADMIN)
USER REGISTRATION
USER LOGIN
NEW NOTE DETAILS
NEW NOTES VERSION DETAILS
NEW NOTE VERSION DETAILS
CREATE NOTES (UPLOAD) VERSION DETAILS
VIEW NOTES
VIEW NOTES (UPLOAD)
VIEW NOTES VERSION
VIEW NOTES VERSION (UPLOAD)
CHANGE PASSWORD (USER)
REFERENCES
BOOK REFERENCES
3. Head First PHP & MySQL – by Lynn Beighley & Michael Morrison
5. PHP & MySQL Web Development – by Luke Welling & Laura Thompson
8. Learn PHP & MySQL – Zero to Hero Programming Crash Course – by Paul
Madoff
10. Programming PHP – by Kevin Tatroe, Peter MacIntyre & Rasmus Lerdorf
“Foreword By: Michael Bourque”
WEB REFERENCES
1. http://www.php.net/manual/en/language.references.php
2. http://www.webreference.com
3. www.phptherightway.com
4. https://www.w3schools.com/php/
5. zetcode.com/lang/php/functions