HOSTEL MANAGEMENT
SYSTEM
INTRODUTION
Hostel management gives on idea about how the students details, room allocation,
mess expenditure are maintained in the particular concern. The hostel management
system also includes some special features. The administration has the unique
identity for each members as well as students details. The stock management has
also held by mess expenditure, the mess expenditure that used to calculate the mess
bills of each of the students. The modules of this project are student details, room
details, mess modules.
Problem definition
We have got four hostels in our university, which consist of two boy’s hostel
and two girl’s hostel. All these hostels at present are managed manually by the
hostel office. The Registration form verification to the different data processing are
done manually.
Thus there are a lot of repetitions which can be easily avoided. And hence there
is a lot of strain on the person who are running the hostel and software’s are not
usually used in this context. This particular project deals with the problems on
managing a hostel and avoids the problems which occur when carried manually
Identification of the drawbacks of the existing system leads to the designing of
computerized system that will be compatible to the existing system with the
system which is more users friendly and more GUI oriented. We can improve the
efficiency of the system, thus overcome the drawbacks of the existing system.
Project Overview
The hostel management system is web based software to provide university
students accommodation to the university hostel more efficiently. This project also
keeps details of the hostellers and applied students. It is headed by Provost. He
will be the administrator. For accommodate a large number of students into hostel.
This document is intended to minimize human works and make hostel allocation is
an easier job for cu students and hostel authorities by providing online application
for hostel, automatically select the students from the waiting list and mess
calculation, complaint registration, notice board etc. etc. Students will get approval
notification in their mails. Hostellers can view notice board, hostel fee, mess menu
by login into the online system.
Objectives
The objectives of this project are:-
1. To develop an integrated system for hostel management system.
2. Providing online student application for student to apply the hostel.
3. To compare the efficiency of system design for a small IT project.
4. Maintain the students as hostellers and waiting list students separately
Process allotment list.
5. Admin can send the approval notification to every approved student via
email.
6. Automatically insert student’s details to the hosteller’s record when the
allotment is confirmed by the admin and deleted when vacation is
conformed or after the course end date.
7. Students can register their complaints.
8. Admin can edit notice board and each student can view it.
9. Hostel secretary can calculate hostel fee including mess fee and can edit
mess menu
[Link] can check the status of every month’s hostel fee
User Panel
User Login
Home
1. This consist of the different pop-up menus showing the details of the different
hostels
[Link] contain a link to the CU official web-site.
[Link] allows the different users to access the registration forms.
4. He can view the Student administration division of the different hostels and
also view the notice boards.
Registration Form
This section provides an online form to the students which can be filled by
them, and a copy of the filled page can be taken in the printed form. This is later
submitted to the Hostel authorities which can be verified by them before allotting
them to the respective hostels.
Notice Board
All the 4 hostels have their Notice boards. Any change in the Hostel fee, mess
fee will be shown in this. It can be also used for different notifications.
Admin Panel
Administrator Login
Home
The Administrator can:
1. Allot different students to the different hostels.
2. Vacate the students for the hostels.
[Link] the status of the fee payment.
[Link] the details of the students & modify the student records.
Allotment of the hostels
Their will be pre-defined criteria’s for the admission to the hostels. He
checks the attested application forms of the students obtained from the internet and
verify it with the student database. If the students are found eligible then they are
allotted to the hostel.
Vacating the rooms
As the student’s course is over they will vacate their rooms. So it is required
for the administrator to remove their records from the database tables. This section
includes the option for the room vacation and the deletion of the particular record
from the database.
Registration Form
This section provides an online form to the students which can be filled by
them, and a copy of the filled page can be taken in the printed form. This is later
submitted to the Hostel authorities which can be verified by them before allotting
them to the respective hostel
Requirement Specification
Hardware Configuration
The most common set of requirements defined by any operating system or software
application is the physical computer resources, also known as hardware.
Processor : Intel Processor Core I3
RAM : 4 GB RAM
Hard Disk : 40GB HDD
Monitor : 1024 * 768 Resolution Color Monitor
Software Configuration
Software Requirements deal with defining software resource requirements and pre-
requisites that need to be installed on a computer to provide optimal functioning of an
application
Operating System : Windows7
Front End : PHP
Server Side Script : XAMAP
Back End : MySQL
IDE : Notepad++
Software Features
PHP TRIAD
PHPTriad installs a complete working PHP/MySQL server environment on
Windows platforms (9x/ NT). Installs PHP, MySQL, Apache, and PHPMyAdmin.
PHP
PHP is a scripting language originally designed for producing dynamic web
pages. It has evolved to include a command line interface capability and can be used in
standalone graphical applications. While PHP was originally created by Rasmus Lerdorf
in 1995, the main implementation of PHP is now produced by The PHP Group and
serves as the de facto standard for PHP as there is no formal specification. PHP is free
software released under the PHP License, however it is incompatible with the GNU
General Public License
(GPL), due to restrictions on the usage of the term PHP. It is a widely-used general-
purpose scripting language that is especially suited for web development and can be
embedded into HTML. It generally runs on a web server, taking PHP code as its input
and creating web pages as output. It can be deployed on most web servers and on almost
every operating system and platform free of charge. PHP is installed on more than 20
million websites and 1 million web servers.
PHP originally stood for Personal Home Page. It began in 1994 as a set of
Common Gateway Interface binaries written in the C programming language by the
Danish/Greenlandic programmer Rasmus Lerdorf. Lerdorf initially created these
Personal Home Page Tools to replace a small set of Perl scripts he had been using to
maintain his personal homepage. The tools were used to perform tasks such as
displaying his résumé and recording how much traffic his page was receiving. He
combined these binaries with his Form Interpreter to create PHP/FI, which had more
functionality. PHP/FI included a larger implementation for the C programming language
and could communicate with databases, enabling the building of simple, dynamic web
applications. Lerdorf released PHP publicly on June 8, 1995 to accelerate bug location
and improve the code. This release was named PHP version 2 and already had the basic
functionality that PHP has today. This included Perl-like variables, form handling, and
the ability to embed HTML. The syntax was similar to Perl but was more limited,
simpler, and less consistent. Zeev Suraski and Andi Gutmans, two Israeli developers
at the Technion IIT, rewrote the parser in 1997 and formed the base of PHP 3, changing
the language’s name to the recursive initialism PHP: Hypertext Preprocessor. The
development team officially released PHP/FI 2 in November 1997 after months of beta
testing. Afterwards, public testing of PHP 3 began, and the official launch came in June
1998. Suraski and Gutmans then started a new rewrite of PHP’s core, producing the
Zend
Engine in 1999. They also founded Zend Technologies in Ramat Gan, Israel.
On May 22, 2000, PHP 4, powered by the Zend Engine 1.0, was released. On
July 13, 2004, PHP 5 was released, powered by the new Zend Engine II. PHP 5
included new features such as improved support for object-oriented programming, the
PHP Data Objects extension (which defines a lightweight and consistent interface for
accessing databases), and numerous performance enhancements. The most recent update
released by The PHP Group is for the older PHP version 4 code branch.
In 2008, PHP 5 became the only stable version under development. Late static
binding has been missing from PHP and will be added in version 5.3. PHP 6 is under
development alongside PHP 5. Major changes include the removal of register_globals,
magic quotes, and safe mode. The reason for the removals was because register_globals
had given way to security holes, and magic quotes had an unpredictable nature, and was
best avoided. Instead, to escape characters, Magic quotes may be substituted with the
addslashes() function, or more appropriately an escape mechanism specific to the
database vendor itself like mysql_real_escape_string() for MySQL.
PHP does not have complete native support for Unicode or multibyte strings;
Unicode support will be included in PHP 6. Many high profile open source projects
ceased to support PHP 4 in new code as of February 5, 2008, due to the GoPHP5
initiative, provided by a consortium of PHP developers promoting the transition from
PHP 4 to PHP 5. It runs in both 32-bit and 64-bit environments, but on Windows the
only official distribution is 32-bit, requiring Windows 32-bit compatibility mode to be
enabled while using IIS in a 64-bit Windows environment. There is a third-party
distribution available for 64-bit Windows.
Usage
PHP is a general-purpose scripting language that is especially suited for web
development. PHP generally runs on a web server, taking PHP code as its input and
creating web pages as output. It can also be used for command-line scripting and client-
side GUI applications. PHP can be deployed on most web servers, many operating
systems and platforms, and can be used with many relational database management
systems. It is available free of charge, and the PHP Group provides the complete source
code for users to build, customize and extend for their own use.
PHP primarily acts as a filter, taking input from a file or stream containing text
and/or PHP instructions and outputs another stream of data; most commonly the output
will be HTML. It can automatically detect the language of the user. From PHP 4, the
PHP parser compiles input to produce bytecode for processing by the Zend Engine,
giving improved performance over its interpreter predecessor. Originally designed to
create dynamic web pages, PHP’s principal focus is server-side scripting,and it is similar
to other server-side scripting
languages that provide dynamic content from a web server to a client, such as
Microsoft’s Active Server Pages, Sun Microsystems’ JavaServer Pages, and mod_perl.
PHP has also attracted the development of many frameworks that provide building blocks
and a design structure to promote rapid application develo- pment (RAD). Some of these
include CakePHP, Symfony, CodeIgniter, and Zend Framework, offering features similar
to other web application frameworks.
The LAMP architecture has become popular in the web industry as a way of
deploying web applic- ations. PHP is commonly used as the P in this bundle alongside
Linux, Apache and MySQL, although the P may also refer to Python or Perl.
As of April 2007, over 20 million Internet domains were hosted on servers with
PHP installed, and PHP was recorded as the most popular Apache module. Significant
websites are written in PHP including the user- facing portion of Facebook, Wikipedia
(MediaWiki), Yahoo!, MyYearbook, , Digg, Wordpress and Tagged. In addition to
server-side scripting, PHP can be used to create stand-alone, compiled applications and
libraries, it can be used for shell scripting, and the PHP binaries can be called from the
command line.
Speed optimization
As with many scripting languages, PHP scripts are normally kept as human-
readable source code, even on production web servers. In this case, PHP scripts will be
compiled at runtime by the PHP engine, which increases their execution time. PHP
scripts are able to be compiled before runtime using PHP compilers as with other
programming languages such as C (the language PHP and its extensions are written in).
Code optimizers aim to reduce the computational complexity of the compiled code by
reducing its size and making other changes that can reduce the execution time with the
overall goal of improving performance. The nature of the PHP compiler is such that
there are often opportunities for code optimization, and an example of a code
optimizer is the Zend Optimizer PHP extension.
Another approach for reducing overhead for high load PHP servers is using PHP
accelerators. These can offer significant performance gains by caching the compiled
form of a PHP script in shared memory to avoid the overhead of parsing and compiling
the code every time the script runs.
Security
The National Vulnerability Database stores all vulnerabities found in computer
software. The overall proportion of PHP-related vulnerabilities on the database
amounted to: 12% in 2003, 20% in 2004, 28% in 2005, 43% in 2006, 36% in 2007,
and 35% in 2008. Most of these PHP-related vulnerabilities can be exploited
remotely: they allow hackers to steal or destroy data from data sources linked to the
webserver (such as an SQL database), send spam or contribute to DOS attacks using
malware, which itself can be installed on the vulnerable servers.
These vulnerabilities are caused mostly by not following best practice
programming rules: technical security flaws of the language itself or of its core libraries
are not frequent. Recognizing that programmers cannot be trusted, some languages
include taint checking to detect automatically the lack of input validation which induces
many issues. However, such a feature is being developed for PHP
Hosting PHP applications on a server requires a careful and constant attention
to deal with these security risks. There are advanced protection patches such as Suhosin
and Hardening-Patch, especially designed for web hosting environments. Installing PHP as
a CGI binary rather than as an Apache module is the preferred method for added
security. With respect to securing the code itself, PHP code can be obfuscated to make
it difficult to read while remaining functional.
Syntax
<html>
<head>
<title>PHP Test </title>
</head>
<body>
<?php echo “<p> Hello World </p>”; ?>
</body></html>
Note : - Code in bold letters shows the PHP code embedded within HTML
PHP only parses code within its delimiters. Anything outside its delimiters is sent
directly to the output and is not parsed by PHP. The most common delimiters are <?php
and ?>, which are open and close delimiters respectively. <script language=”php”> and
</script> delimiters are also available. Short tags can be used to start PHP code, <? or
<?= (which is used to echo back a string or variable) and the tag to end PHP code, ?>.
These tags are commonly used, but like ASP-style tags (<% or <%= and %>), they are
less portable as they can be disabled in the PHP configuration. For this reason, the use of
short tags and ASP-style tags is discouraged. The purpose of these delimiters is to
separate PHP code from non-PHP code, including HTML.
Variables are prefixed with a dollar symbol and a type does not need to be
specified in advance. Unlike function and class names, variable names are case
sensitive. Both double-quoted (“”) and heredoc strings allow the ability to embed a
variable’s value into the string. PHP treats newlines as whitespace in the manner of a
free-form language (except when inside string quotes), and statements are terminated by a
semicolon. PHP has three types of comment syntax: /* */ serves as block comments, and
// as well as # are used for inline comments. The echo statement is one of several
facilities PHP provides to output text (e.g. to a web browser).
In terms of keywords and language syntax, PHP is similar to most high level
languages that follow the C style syntax. If conditions, for and while loops, and function
returns are similar in syntax to languages such as C, C++, Java and Perl.
Data types
PHP stores whole numbers in a platform-dependent range. This range is typically
that of 32-bit signed integers. Unsigned integers are converted to signed values in certain
situations; this behavior is different from other programming languages. Integer variables
can be assigned using decimal (positive and negative), octal, and hexadecimal notations.
Floating point numbers are also stored in a platform-specific range. They can be
specified using floating point notation, or two forms of scientific notation. PHP has a
native Boolean type that is similar to the native Boolean types in Java and C++. Using
the Boolean type conversion rules, non-zero values are interpreted as true and zero as
false, as in Perl and C++. The null data type represents a variable that has no value.
The only value in the null data type is NULL. Variables of the “resource” type
represent references to resources from external sources. These are typically created by
functions from a particular extension, and can only be processed by functions from the
same extension; examples include file, image, and database resources. Arrays can contain
elements of any type that PHP can handle, including resources, objects, and even other
arrays. Order is preserved in lists of values and in hashes with both keys and values,
and the two can be intermingled. PHP also supports strings, which can be used with
single quotes, double quotes, or heredoc syntax. The Standard PHP Library (SPL)
attempts to solve standard problems and implements efficient data access interfaces and
classes.
Functions
PHP has hundreds of base functions and thousands more from extensions. These
functions are well documented on the PHP site, but unfortunately, the built-in library has
a wide variety of naming conventions and inconsistencies. PHP currently has no
functions for thread programming.
Version 5.2 and earlier
Functions are not first-class functions and can only be referenced by their name—
directly or dynamically by a variable containing the name of the function. User-defined
functions can be created at any time without being prototyped. Functions can be defined
inside code blocks, permitting a run-time decision as to whether or not a function should
be defined. Function calls must use parentheses, with the exception of zero argument
class constructor functions called with the PHP new operator, where parentheses are
optional. PHP supports quasi-anonymous functions through the create_function() function,
although they are not true anonymous functions because anonymous functions are
nameless, but functions can only be referenced by name, or indirectly through a variable
$function_name();, in PHP.
Version 5.3 and newer
PHP gained support for first-class functions and closures. True anonymous functions
are supported function getAdder($x) using the following syntax :
function getAdder($x)
return function ($y) use
($x) { return $x + $y;
};
$adder = getAdder(8);
echo $adder(2); // prints “10”
Here, getAdder() function creates a closure using parameter $x (keyword “use”
forces getting variable from context), which takes additional argument $y and returns it
to the caller. Such a function can be stored, given as the parameter to another functions,
etc. For more details see Lambda functions and closures RFC.
Objects
Basic object-oriented programming functionality was added in PHP 3. Object
handling was completely rewritten for PHP 5, expanding the feature set and enhancing
performance. In previous versions of PHP, objects were handled like primitive types.
The drawback of this method was that the whole object was copied when a variable was
assigned or passed as a parameter to a method. In the new approach, objects are
referenced by handle, and not by value. PHP 5 introduced private and protected
member variables and methods, along with abstract classes and final classes as well as
abstract methods and final methods. It also introduced a standard way of declaring
constructors and destructors, similar to that of other object-oriented languages such as
C++, and a standard exception handling model.
Furthermore, PHP 5 added interfaces and allowed for multiple interfaces to be
implemented. There are special interfaces that allow objects to interact with the runtime
system. Objects implementing ArrayAccess can be used with array syntax and objects
implementing Iterator or IteratorAggregate can be used with the foreach language
construct. There is no virtual table feature in the engine, so static variables are bound
with a name instead of a reference at compile time.
If the developer creates a copy of an object using the reserved word clone, the
Zend engine will check if a clone() method has been defined or not. If not, it will call
a default clone() which will copy the object’s properties. If a clone() method is
defined, then it will be responsible for setting the necessary properties in the created
object. For convenience, the engine will supply a function that imports the properties of
the source object, so that the programmer can start with a by-value replica of the
source object and only override properties that need to be changed.
Resources
PHP includes free and open source libraries with the core build. PHP is a
fundamentally Internet- aware system with modules built in for accessing FTP servers,
many database servers, embedded SQL libraries such as embedded PostgreSQL, MySQL
and SQLite, LDAP servers, and others. Many functions familiar to C programmers such
as those in the stdio family are available in the standard PHP build. PHP has traditionally
used features such as “magic_quotes_gpc” and “magic_quotes_runtime” which attempt to
escape apostrophes (‘) and quotes (“) in strings in the assumption that they will be used
in databases, to prevent SQL injection attacks. This leads to confusion over which data
is escaped and which is not, and to problems when data is not in fact used as input to a
database and when the escaping used is not completely correct. To make code portable
between servers which do and do not use magic quotes, developers can preface their
code with a script to reverse the effect of magic quotes when it is applied.
PHP allows developers to write extensions in C to add functionality to the PHP
language. These can then be compiled into PHP or loaded dynamically at runtime.
Extensions have been written to add support for the Windows API, process management
on Unix-like operating systems, multibyte strings (Unicode), cURL, and several popular
compression formats. Some more unusual features include integration with Internet Relay
Chat, dynamic generation of images and Adobe Flash content, and even speech
synthesis. The PHP Extension Community Library (PECL) project is a repository for
extensions to the PHP language. Zend provides a certification exam for programmers to
become certified PHP developers.
MY SQL
What is a database? Quite simply, it’s an organized collection of data. A database
management system (DBMS) such as Access, FileMaker Pro, Oracle or SQL Server
provides you with the software tools you need to organize that data in a flexible
manner. It includes facilities to add, modify or delete data from the database, ask
questions (or queries) about the data stored in the database and produce reports
summarizing selected contents.
MySQL is a multithreaded,multi-user SQL database management system(DBMS).
The basic program runs as a server providing multi-user access to a number of
[Link] financed in a similar fashion to the JBoss model, MySQL was
owned and sponsored by a single for-profit firm, the Swedish company MySQLAB
now a subsidiary of Sun Microsystem , which holds the copyright to most of the
codebase. The project’s source code is available under terms of the GNU General Public
Licence, as well as under a variety of proprietory agreements.
MySQL is a [Link] data in MySQL is stored in database objects called
tables.A table is a collections of related data entries and it consists of columns and
[Link] are useful when storing information categorically. A company may have
a database with the following tables: “Employees”, “Products”, “Customers” and
“Orders”.
Database Tables
A database most often contains one or more tables. Each table is identified by a
name (e.g. “Customers” or “Orders”). Tables contain records (rows) with data.
Queries
A query is a question or a [Link] MySQL, we can query a database for specific
information and have a recordset returned.
Create a connection to a database
Before you can access data in a database, you must create a connection to the
[Link] PHP, this is done with the mysql_connect() function.
Syntax
Example
In the following example we store the connection in a variable ($con) for later use in
the script. The “die” part will be executed if the connection fails:
Closing a Connection
The connection will be closed automatically when the script ends. To close the
connection before, use the mysql_close() function:
Create a Database
The CREATE DATABASE statement is used to create a database in MySQL.
Syntax
CREATE DATABASE database_name
To get PHP to execute the statement above we must use the mysql_query()
function. This function is used to send a query or command to a MySQL connection.
Create a Table
The CREATE TABLE statement is used to create a table in MySQL
Syntax
CREATE TABLE table_name
column_name1
data_type,
column_name2
data_type,
column_name3
data_type,
....
)
MySQL Functions
mysql_affected_rows — Get number of affected rows in previous MySQL
operation mysql_change_user — Change logged in user of the active
connection mysql_client_encoding — Returns the name of the character set
mysql_close — Close MySQL connection
mysql_connect — Open a connection to a MySQL
Server mysql_create_db — Create a MySQL
database mysql_data_seek — Move internal result
pointer mysql_db_name — Get result data
mysql_db_query — Send a MySQL query
mysql_drop_db — Drop (delete) a MySQL
database
mysql_errno — Returns the numerical value of the error message from previous
MySQL operation mysql_error — Returns the text of the error message from previous
MySQL operation mysql_escape_string — Escapes a string for use in a mysql_query
mysql_fetch_array — Fetch a result row as an associative array, a numeric array, or
both mysql_fetch_assoc — Fetch a result row as an associative array
mysql_fetch_field — Get column information from a result and
return as an object mysql_fetch_lengths — Get the length of each
output in a result mysql_fetch_object — Fetch a result row as an
object
wsmysql_num_rows — Get number of rows in result
mysql_pconnect — Open a persistent connection to a MySQL
server mysql_ping — Ping a server connection or reconnect if
there is no connection mysql_query — Send a MySQL query
mysql_result — Get result data
mysql_select_db — Select a MySQL
database
mysql_set_charset — Sets the client
character set mysql_stat — Get current
system status mysql_tablename — Get table
name of field mysql_thread_id — Return
the current thread ID
mysql_unbuffered_query — Send an SQL query to MySQL, without fetching and
buffering the result (See Appendix 2 for more My_SQL Functions.)
Macromedia Dreamweaver 8
Is a professional HTML editor for designing, coding, and developing websites, web
pages, and web applications. Whether you enjoy the control of hand-coding HTML or
prefer to work in a visual editing environment, Dreamweaver provides you with helpful
tools to enhance your web creation experience.
The visual editing features in Dreamweaver let you quickly create pages without
writing a line of code. You can view all your site elements or assets and drag them from
an easy-to-use panel directly into a document. You can streamline your development
workflow by creating and editing images in Macromedia Fireworks or another graphics
application, then importing them directly into Dreamweaver, or by adding
Macromedia Flash objects.
Dreamweaver also provides a full-featured coding environment that includes code-
editing tools (such as code coloring and tag completion) and language reference material
on Cascading Style Sheets (CSS), JavaScript, and ColdFusion Markup Language (CFML),
among others. Macromedia Roundtrip HTML technology imports your hand-coded
HTML documents without reformatting the code; you can then reformat code with
your preferred formatting style. Dreamweaver also enables you to build dynamic
database-backed web applications using server technologies such as CFML, [Link],
ASP, JSP, and PHP.
Dreamweaver and accessibility
Accessibility refers to making websites and web products usable for people with
visual, auditory, motor, and other disabilities. Examples of accessibility features for
software products and websites include screen reader support, text equivalents for
graphics, keyboard shortcuts, change of display colors to high contrast, and so on.
Dreamweaver provides tools that make the product accessible and tools that help you
author accessible content:
Using Dreamweaver accessibility features For Dreamweaver web designers
who need to use accessibility features, Dreamweaver offers screen reader support,
keyboard navigation, and operating system accessibility [Link] more information,
see Using Dreamweaver accessibility features.
Authoring for accessibility For Dreamweaver web designers who need to create
accessible content, Dreamweaver assists you in creating accessible pages that contain
useful content for screen readers and comply with government guidelines.
Dreamweaver provides dialog boxes that prompt you to enter accessibility
attributes when you insert page elements (see Optimizing the workspace for accessible
page design).For example, the accessibility dialog box for images reminds you to add text
equivalents for graphics. Then, when the image appears on a page for a user with visual
disabilities, the screen reader reads the description.
Laying Out Pages with CSS
In Macromedia Dreamweaver 8, you can use CSS styles to lay out your page. You
can either insert div tags manually and apply CSS positioning styles to them, or you can
use Dreamweaver layers to create your layout. A layer in Dreamweaver is an HTML
page element—specifically, a div tag, or any other tag—that has an absolute position
assigned to it. Whether you use CSS, tables, or frames to lay out your pages,
Dreamweaver has rulers and grids for visual guidance in your layout. Dreamweaver also
has a tracing image feature, which you can use to re-create a page design that was
created in a graphics application.
Client-side role of forms
Forms support the client side of the client-server relationship. When a visitor enters
information into a form displayed in a web browser (the client) and clicks the submit
button, the information is sent to the server where a server-side script or application
processes it. Common server-side technologies used for processing form data include
Macromedia ColdFusion, Microsoft Active Server Pages (ASP), and PHP. The server
responds by sending requested information back to the user (or client), or performing
some action based on the form’s contents.
( Note : - See Appendix 1 for more about Macromedia Dreamweaver 8 and
phpMyAdmin)
phpMAdmin
phpMyAdmin is an open source tool written in PHP intended to handle the
administration of MySQL over the World Wide Web. phpMyAdmin supports a wide
range of operations with [Link] it can create and drop databases,
create/drop/alter tables, delete/edit/add fields, execute any SQL statement, manage users
and permissions, and manage keys on fields. while you still have the ability to directly
execute any SQL statement. phpMyAdmin can manage a whole MySQL server (needs a
super-user) as well as a single database. To accomplish the latter you’ll need a properly
set up MySQL user who can read/write only the desired database. It’s up to you to
look up the appropriate part in the MySQL manual.
phpMyAdmin can:
· browse and drop databases, tables, views, fields and indexes
· create, copy, drop, rename and alter databases, tables, fields and indexes
· maintenance server, databases and tables, with proposals on server configuration
· execute, edit and bookmark any SQL-statement, even batch-queries
· load text files into tables
· create and read dumps of tables
· export data to various formats: CSV, XML, PDF, ISO/IEC 26300 - OpenDocument
E
Text and Spreadsheet, Word, Excel and LAT X formats
· administer multiple servers
· manage MySQL users and privileges
· check referential integrity in MyISAM tables
· using Query-by-example (QBE), create complex queries automatically connecting
required tables
· create PDF graphics of your Database layout
· search globally in a database or a subset of it
· transform stored data into any format using a set of predefined functions,
like displaying BLOB- data as image or download-link
· support InnoDB tables and foreign keys
· support mysqli, the improved MySQL extension
A word about users:
Many people have difficulty understanding the concept of user management with
regards
to phpMyAdmin. When a user logs in to phpMyAdmin, that username and password are
passed directly
to MySQL. phpMyAdmin does no account management on its own (other than
allowing one to manipulate the MySQL user account information); all users must be
valid MySQL users.
1) phpMyAdmin can compress (Zip, GZip -RFC 1952- or Bzip2 formats) dumps
and CSV exports if you use PHP with Zlib support (—with-zlib) and/or Bzip2
support (—with-bz2). Proper support may also need changes in [Link].a
phpMyAdmin screen appears as shown below.
Requirements
o PHP
o You need PHP 5.2.0 or newer, with session support and the Standard
PHP Library (SPL) extension.
o To support uploading of ZIP files, you need the PHP zip extension.
o For proper support of multibyte strings (eg. UTF-8, which is currently
default), you should install mbstring and ctype extensions.
o You need GD2 support in PHP to display inline thumbnails of JPEGs
(“image/jpeg: inline”) with their original aspect ratio
o When using the “cookie” authentication method, the mcrypt extension is
strongly suggested for most users and is required for 64–bit machines.
Not using mcrypt will cause phpMyAdmin to load pages significantly
slower.
Apache Web server
Often referred to as simply Apache, a public-domain open source Web server
developed by a loosely- knit group of programmers. The first version of Apache, based
on the NCSA httpd Web server, was developed in 1995.
Core development of the Apache Web server is performed by a group of about 20
volunteer programmers, called the Apache Group. However, because the source code is
freely available, anyone can adapt the server for specific needs, and there is a large
public library of Apache add-ons. In many respects, development of Apache is similar
to development of the Linux operating system.
The original version of Apache was written for UNIX, but there are now versions
that run under OS/ 2, Windows and other platforms. The name is a tribute to the Native
American Apache Indian tribe, a tribe well known for its endurance and skill in warfare.
A common misunderstanding is that it was called Apache because it was developed from
existing NCSA code plus various patches, hence the name a patchy server, or Apache
server.
Apache consistently rates as the world’s most popular Web server according to
analyst surveys. Apache has attracted so much interest because it is full-featured,
reliable, and free. Originally developed for UNIX™ operating systems, Apache has
been updated to run on Windows, OS/2, and other platforms. One aspect of Apache that
some site administrators find confusing — especially those unfamiliar with UNIX-style
software — is its configuration scheme. Instead of using a point-and-click graphic user
interface (GUI) or Windows Registry keys as most other modern software packages,
Apache generally relies on simple text files for its configuration settings.
Configuration Files
Apache uses a system of three text files for managing its configuration data. All three of
these files (almost always) appear in Apache’s ./conf directory and are designed to be
edited by system administrators:
1. [Link] for general settings
2. [Link] for resource settings
3. [Link] for security settings
When Apache first starts, these files are processed in the order shown above.
Originally, the initial installation of Apache included default entries within each of the
three files. In the most recent versions of Apache, however, the default installation has
changed. Now [Link] is treated as the “master” configuration file and it contains all of
the settings. Both [Link] and [Link] still exist in the installation, but they contain
no settings and are empty except for some comments.
Inside [Link]
Traditionaly [Link] contained general settings such as the ServerName and
Port [Link] entries appear as follows in the file: ServerName
[Link] Port 80 The term “httpd” stands for HTTP Daemon.
Recall that in a UNIX environment, the term daemon refers to a type of process
designed to launch at system boot and continue running for very long periods of time.
This file contains a number of other entries (technically called directives), but for most of
these,modifications are optional. Probably the most useful of these entries is
ServerAdmin.
Access and Security Settings
It is recommended practice now for Apache administrators to manage their
resource and security settings from [Link]. Administrators of older versions of
Apache can simply cut their entries from [Link] and [Link] and paste them into
the master file. If an administrator wants to go one step further and delete the two empty
files, they should also place the following entries in [Link] to prevent Apache from
attempting to access them.
Feasibility study
Feasibility Study is basically the test of the proposed system in the light of its
workability, meeting user’s requirements, effective use of resources and of course, the
cost effectiveness. As the name implies, feasibility study is an analysis of the viability
of an idea. It ensures that a project is legally and technically feasible and
economically justifiable.
Moreover this study can be used in various ways with focus on the proposed business.
It tells us whether a project is worth doable or not? Feasibility study is a must
because: A feasibility study evaluates the project's potential for success; therefore,
perceived objectivity is an important factor in the credibility of the study for potential
investors and lending institutions
The main goal of feasibility study is not to solve the problem but to achieve the scope.
In the process of feasibility study, the cost and benefits are estimated with greater
accuracy. It has three types:
Operational Feasibility
Technical Feasibility
Economic Feasibility
Economic Feasibility
Economic analysis is the most frequently used method for evaluating the
effectiveness of a new system. More commonly known as cost/benefit analysis. PHP
using IDE and MySQL database easily available Script Server Side (like XAMAP/
WAMAP) in internet.
This procedure is to determine the benefits and savings that are expected from a
candidate system and compare them with costs. If benefits outweigh costs, then the
decision is made to design and implement the system. Otherwise, further justification
or alterations in proposed system will have to be made if it is to have a chance of
being approved. This is an ongoing effort that improves in accuracy at each phase of
the system life cycle.
Economic feasibility talks about the benefits that which we get from this project. Here
with the introduction of this online process we are not only reducing the time take for
the registration of the entrants. We even reduce the burden on the administrator. As
this project is not only reducing the time but also the work burden of the user we say
that this product is economically feasible.
Technical Feasibility
The technical feasibility in the proposed system deals with the technology used in the
system. It deals with the hardware and software used in the system whether they are
of latest technology or not. It happens that after a system is prepared a new
technology arises and the user wants the system based on that technology. This
system use windows platform, PHP as front end technology and MySQL server as
backend technology. Thus HOSTEL MANAGEMENT SYSTEM is technically
feasible.
Technical feasibility centers on the existing computer system (hardware, software,
etc.,) and to what extent it can support the proposed addition. If the budget is a serious
constraint, then the project is judged not feasible.
Technical feasibility speaks about the existing hardware and the software that we are
using and the deviations that we have to make from the existing one, as we are
developing the application using java there is no change in the hardware that we are
using. So we a say that this application is technically feasible as there is no change in
the configuration more over it is cost effective.
Operational Feasibility
The project has been developed in such a way that it becomes very easy even for a
person with little computer knowledge to operate it. People are inherently resistant to
change, and computers have been known to facilitate change. It is understandable that
the introduction of a candidate system requires special effort to educate, sell, and train
the staff on new ways of conducting business.
As this project is a user friendly version there is not much training required for the
people to use. This product is not only making the task of the administrator easy but it
is reducing the time that is taken otherwise. So we say that this product is
operationally feasible.
System Analysis
Existing System
The existing system is manual based and need lot of efforts and consume enough
time. In the existing system we can apply for the hostels online but the allotment
processes are done manually. It may lead to corruptions in the allocation process as
well as hostel fee calculation. The existing system does not deals with mess
calculation and complaint registration.
For the past few years the number of educational institutions are increasing rapidly.
Thereby the number of hostels are also increasing for the accommodation of the
students studying in this institution. And hence there is a lot of strain on the person
who are running the hostel and software’s are not usually used in this context. This
particular project deals with the problems on managing a hostel and avoids the
problems which occur when carried manually
Identification of the drawbacks of the existing system leads to the designing of
computerized system that will be compatible to the existing system with the system
which is more user friendly and more GUI oriented. We can improve the efficiency
of the system, thus overcome the following drawbacks of the existing system.
Disadvantages of Existing System
More human Power.
More strength and strain of manual labor needed
Repetition of the same procedures.
Low security
Data redundancy
Difficult to handle
Difficult to update data
Record keeping is difficult
Backup data can be easily generated.
Proposed System:
Hostel Management System (HMS) is web-based system for managing various
activities in the hostel thought online. It helps in avoiding the problems which
occur when carried out manually
It improves the efficiency of the system. Ability to manage application, admission,
Allotting room and mess bill & hostel bill, student vacation and report generation
Less human error
Strength and strain of manual labour can be reduced
High security
Data redundancy can be avoided to some extent
Data consistency
Easy to handle
Easy data updating
Easy record keeping
Backup data can be easily generated
System Design
The system design is divided into two portions. The Administrator section and student
section.
Administrator (Provost)
1. The Administrator can allot different students to the different hostels.
2. He can vacate the students for the hostels.
3. He can control the status of the fee payment.
4. He can edit the details of the students. He can change their rooms, edit and
delete the student records.
5. Make the Mess menu
6. Make the mess bill & hostel bill
7. Give notifications in Notice Board
Students
1. Can edit information before submit
2. After getting conformation can’t access any information
3. Meal Order and View Meal Cost Report
4. Change Password
. In input data design, we design the source document that capture the data and then
select the media used to enter them into the computer. There are two major
approaches for entering data in to the computer. They are
· Menus.
· Dialog Boxes.
Menus
A menu is a selection list that simplifies computer data access or entry. Instead of
remembering what to enter, the user chooses from a list of options. A menu limits a
user choice of response but reduce the chances for error in data entry.
Dialog Box
Dialog boxes are windows and these windows are mainly popup, which appear in
response to certain conditions that occur when a program is run. It allows the display
of bitmaps and pictures. It can have various controls like buttons, text boxes, list
boxes and combo boxes. Using these controls we can make a ‘dialog’ with the
program. The proposed system has three major inputs. They are Machine
Registration, Machine Scheduling and Request Form.
Process Design
Process design plays an important role in project development. In order to understand
the working procedure, process design is necessary. Data Flow Diagram and System
Flow chart are the tools used for process design.
System Flow Chart is a graphical representation of the system showing the overall
flow of control in processing at the job level; specifies what activities must be done to
convert from a physical to logical model.
Data Flow Diagram is the logical representation of the data flow of the project. The
DFD is drawn using various symbols. It has a source and a destination. The process is
represented using circles and source and destination are represented using squares.
The data flow is represented using arrows.
One reader can easily get the idea about the project through Data Flow Diagram.
SYMBOLS USED IN DATA FLOW DIAGRAM
- source rectangle, which defines or destination
-Arrow, which shows dataflow.
-Circle, which represent a process that transforms
incoming data
into outgoing flow.
-Open rectangle, which shows a data store.
DATAFLOW DIADRAMS
Data Flow Diagram
Context level DFD
Fig: DFD for allotment process
Student Module
Fig: DFD for student module
Registration process
Fig: DFD for Student Registration
Admin module
Fig : DFD for Admin module
Allotment process
Vacating process
Fig: DFD for Vacation Process
Overall Diagram:
USE CASE DIAGRAM: Use case diagram is a diagram that shows the interaction
between user and system to capture the user’s goals.
collect& store the student details
store the availability of hostel&
room details
generate & update the attendance
details
calculate& generate report for
mess expenditure detail for ...
aadministrator
db manager
calculate & generate report for
mess expenditure detail for ...
request for mess bill report
check and verify mess bill report mess bill calculation
update the payment details
display the mess bill report to the
student
payment of mess bill
student
CLASS DIAGRAM:
Class diagram is a collection of static elements such as classes and their
relationships connected as a graph to each other.
Student
Student name Administrator
data base manager
roll no
address enter the students details()
update the student details()
branch enter room details()
update mess item expenditure()
year enter attendance details()
update the attendance details()
room no enter mess item expenditure per month()
calculate mess expenditure()
give details()
calculate
report
total mess expenditure per month()
generate mess bill report()
calculate mess fees for each student()
Activity Diagram:
It describes the sequence of activity it support for the conditional and parallel behavior.
It is a variant of a state diagram in which most of the states are activity states.
start
Login
enter student enter room
details details enter mess
details
calculate mess
expenditure& mess bill
generate
report
Update details
stop
Student Modules:
USE CASE DIAGRAM:
Use case diagram is a diagram that shows the interaction between user and system
to capture the user’s goals.
enter student details
edit details
adminis db manager
delete details
view details
details updated
CLASS DIAGRAM:
Class diagram is a collection of static elements such as classes and their relationships
connected as a graph to each other.
Administrator
db Manager
enter rollno details()
keep the attendance() update the attendance detail()
update details()
Student
name
rollno
address
branch
year
room no
Activity Diagram:
It describes the sequence of activity it support for the conditional and parallel behaviour .
It is a variant of a state diagram in which most of the states are activity states.
start
enter student enter student
details rollno
inv alid
update details
v alid
edit delete v iew
update
stop
Room Modules:
USE CASE DIAGRAM:
Use case diagram is a diagram that shows the interaction between user and system
to capture the user’s goals.
enter room details
update details
view details
enter the hostelno
adminis DBmanager
check free room
check for availability in other hostel
no
enter the other hostelno
allocate room
display free rooms
request room
student
room details displayed
CLASS DIAGRAM:
Class diagram is a collection of static elements such as classes and their relationships connected as
a graph to each other.
administrator
dbmanager
enter room detail()
update details() maintain room details()
view details() display room details()
check room availability()
Activity Diagram:
It describes the sequence of activity it support for the conditional and parallel behaviour . It is a
variant of a state diagram in which most of the states are activity states.
start
room detai l s
enter room
detai ls request for room
avai l abi li ty
enter room no
UPDAT E check room request room
Detai ls avai l abi li ty detai ls
di spl ay room
vi ew room
avail abi li ty deta il s
detai ls
exi t
stop
Mess Modules:
USE CASE DIAGRAM:
Use case diagram is a diagram that shows the interaction between user and system
to capture the user’s goals.
enter mess expenditure
calculate expenditure for veg
calculate expenditure for non-veg
DBmanager
ADMINISTRATOR
calculate mess expenditure details
per day
mess bill calculation
calculate mess expenditure details
acknowledgement for messbill per month
display mess bill report request for messbill report
student
CLASS DIAGRAM:
Class diagram is a collection of static elements such as classes and their relationships
connected as a graph to each other.
ADministrator
STUDENT DBManager
enter mess item expenditure per day()
pay mess bill() enter mess item expenditure per month() calculate mess item expenditure()
calculate mess expenditure()
calculate
report
total mess expenditure per day()
total mess expenditure per month()
generate mess bill report()
calculate mess fees for each()
calculate mess expenditure for veg or nonveg()
Activity Diagram:
It describes the sequence of activity it support for the conditional and parallel behaviour .
It is a variant of a state diagram in which most of the states are activity states.
start
enter mess item
details(veg,nonveg) enter payment
details
Update
UPdate
calculate mess bill calculate mess bill
expenditure per day expenditure per month
display the mess Display the m ess
expenditure(veg,nonveg) expenditure (veg,non veg)
generate mess bill
& payment report
stop
System Implementation
Implementation is the stage in the project where the theoretical design is turned into a
working system and is giving confidence on the new system for the users that it will work efficiently
and effectively. It involves careful planning, investigation of the current system and its constraints
on implementation, design of methods to achieve the change over, an evaluation of change over
methods. Apart from planning major task of preparing the implementation are education and training
of users. The implementation process begins with preparing a plan for the implementation of the
system. According to this plan, the activities are to be carried out, discussions made regarding the
equipment and resources and the additional equipment has to be acquired to implement the new
system. In network backup system no additional resources are needed.
Implementation is the final and the most important phase. The most critical stage in achieving
a successful new system is giving the users confidence that the new system will work and be
effective. The system can be implemented only after thorough testing is done and if it is found to be
working according to the specification. This method also offers the greatest security since the old
system can take over if the errors are found or inability to handle certain type of transactions while
using the new system.
User Training
After the system is implemented successfully, training of the user is one
of the most important subtasks of the developer. For this purpose user manuals are
prepared and handled over to the user to operate the developed system. Thus the users
are trained to operate the developed system. Both the hardware and software securities
are made to run the developed systems successfully in future. In order to put new
application system into use, the following activities were taken care of:
· Preparation of user and system documentation
. Conducting user training with demo and hands on
· Test run for some period to ensure smooth switching over the
system
The users are trained to use the newly developed functions. User manuals
describing the procedures for using the functions listed on menu are circulated to all
the users. It is confirmed that the system is implemented up to users need and
expectations.
Security and Maintenance
Maintenance involves the software industry captive, typing up system
resources .It means restoring something to its original condition. Maintenance follows
conversion to the extend that changes are necessary to maintain satisfactory operations
relative to changes in the user’s environment. Maintenance often includes minor
enhancements or corrections to problems that surface in the system’s operation.
Maintenance is also done based on fixing the problems reported, changing the
interface with other software or hardware enhancing the software.
Any system developed should be secured and protected against possible hazards. Security
measures are provided to prevent unauthorized access of the database at various levels. An
uninterrupted power supply should be so that the power failure or voltage fluctuations will not erase
the data in the files.
Password protection and simple procedures to prevent the unauthorized access are provided
to the users .The system allows the user to enter the system only through proper user name and
password.
System Testing
System testing is the stage of implementation, which is aimed at ensuring that the system works
accurately and efficiently before live operation commences. Testing is the process of executing the
program with the intent of finding errors and missing operations and also a complete verification to
determine whether the objectives are met and the user requirements are satisfied. The ultimate aim is
quality assurance.
Tests are carried out and the results are compared with the expected document. In
the case of erroneous results, debugging is done. Using detailed testing strategies a
test plan is carried out on each module. The various tests performed in “Network
Backup System” are unit testing, integration testing and user acceptance testing.
Unit Testing
The software units in a system are modules and routines that are assembled and
integrated to perform a specific function. Unit testing focuses first on modules,
independently of one another, to locate errors. This enables, to detect errors in coding
and logic that are contained within each module. This testing includes entering data
and ascertaining if the value matches to the type and size supported by java. The
various controls are tested to ensure that each performs its action as required.
Integration Testing
Data can be lost across any interface, one module can have an adverse effect on
another, sub functions when combined, may not produce the desired major functions.
Integration testing is a systematic testing to discover errors associated within the
interface. The objective is to take unit tested modules and build a program structure.
All the modules are combined and tested as a whole. Here the Server module and
Client module options are integrated and tested. This testing provides the assurance
that the application is well integrated functional unit with smooth transition of data.
User Acceptance Testing
User acceptance of a system is the key factor for the success of any system. The
system under consideration is tested for user acceptance by constantly keeping in
touch with the system users at time of developing and making changes whenever
required.
Sample Screenshots
Future work and Conlusion
To conclude the description about the project: The project, developed using PHP
and MySQL is based on the requirement specification of the user and the analysis of the
existing system, with flexibility for future enhancement.
The expanded functionality of today’s software requires an appropriate approach towards
software development. This hostel management software is designed for people who want to manage
various activi-ties in the hostel. For the past few years the number of educational institutions are
increasing rapidly.
Thereby the number of hostels are also increasing for the accommodation of the students
studying in this institution. And hence there is a lot of strain on the person who are
running the hostel and software’s are not usually used in this context. This particular
project deals with the problems on managing a hostel and avoids the problems which
occur when carried manually.
Identification of the drawbacks of the existing system leads to the designing of
computerized system that will be compatible to the existing system with the system which
is more user friendly and more GUI oriented
References
[Link]
[Link]
[Link]/wiki/PHP
4 . [Link]/category/php/
5. [Link]/
6. [Link]/[Link]?e=35050