Project Report On Student Information Management System in PHP
Project Report On Student Information Management System in PHP
PROJECT REPORT
ON
Student Information Management System
Submitted in partial fulfillment for the
Award of degree of
Bachelor of Technology in Information Technology
Submitted by:
Kapil Kaushik
Ankur Agarwal
Tushar Somani
Submitted to:
Head of Department
(Mr. N. P. SHRIVASTAVA)
Academic Head
Project Guide
PRINCIPAL
(Mr. N. K. KHANDELWAL)
Department
Technology
Ma
of Information
h
a
ri
shi
Arvind
Institute of Engineering and
Technology
2010-11
PREFACE
This project Student Information Management System provides us a simple
interface for maintainance of student information.It can be used by educational
institutes or colleges to maintain the records of students easily. Achieving this
objective is difficult using a manual system as the information is scattered, can be
redundant and collecting relevant information may be very time consuming. All these
problems are solved using this project.
Throughout the project the focus has been on presenting information in an easy and
intelligible manner. The project is very useful for those who want to know about
Student Information Management Systems and want to develop softwares/websites
based on the same concept.
The project provides facilities like online registration and profile creation of students
thus reducing paperwork and automating the record genreration process in an
educational institution.
ACKNOWLEDGEMENT
We take this opportunity to express our sincere gratitude to all those who helped us
in various capacities in undertaking this project and devising the report.
We are privileged to express our sense of gratitude to our respected teacher Mr.
Rizwan Khan whose unparalleled knowledge, moral fiber and judgment along with
his know-how, was an immense support in completing the project.
We are also grateful to Mr. Neeraj Shrivastav,the Head of Department, Information
Technology, for the brainwave and encouragement given.
We take this opportunity also to thank our friends and contemporaries for their cooperation and compliance.
Kapil Kaushik
Ankur Agarwal
Tushar Somani
TABLE OF CONTENTS
1. Declaration
2. Synopsis of project
3. System Requirement Specification
4. Technology overview
5. Project description
6. Snapshots
7. Scope of project
8. Contribution in project
9. Bibliography
DECLARATION
M
Aa
rh
va
i r
ni
ds
h
i
r
Institute
CERTIFICA
k
of
Engineer
TE
ing and
c
This is to certify that
Te
the project titled a
ch
no
r
lo
STUDENT
r
gy
INFO
i
2010-11
RMA
DEPAR
TION
TMENT
MAN
OF
INFOR
AGE
MATIO
MEN
N
TECHN
T
OLOGY
SYST
EM
d
o
u
t
yt
fillme
followi
nt of
ng
the
Information
Requi
Technology
students: reme
1.
nts
2.
for
3.
the
degre
e of
the
Bach
elor
of
Techn
ology
by
RTU,
kota
durin
g the
acad
emic
year
of
2010-
2011
GUIDE
(Mr. Rizwan Khan)
HEAD OF D
(Mr. N.P. S
SYNOPSIS
Abstract
Student Information Management System can be used by education institutes to
maintain the records of students easily. Achieving this objective is difficult using a
manual system as the information is scattered, can be redundant and collecting
relevant information may be very time consuming. All these problems are solved
using this project.
Name of the Project: Student Information Management System
Objectives:
Online registration of students
Maintenance of student records
Searching student records
Users Views:
Administrator
Student
Platform
Operating Systems: Microsoft Windows
Technologies Used:
Front End: HTML and Javascript
Web designing language: PHP
Hardware Requirements:
Intel Pentium IV processor or equivalent or higher
512 MB Ram or Higher
20 GB HDD or Higher
Network Connectivity
1. Introduction
1.1 Purpose:
The objective of Student information System is to allow the administrator of
any organization to edit and find out the personal details of a student and
allows the student to keep up to date his profile .Itll also facilitate keeping all
the records of students, such as their id, name, mailing address, phone
number, DOB etc. So all the information about an student will be available in a
few seconds.
Overall, itll make Student Information Management an easier job for the
administrator and the student of any organization.
The main purpose of this SRS document is to illustrate the requirements of
the project Student information System and is intended to help any
organization to maintain and manage its students personal data.
1.2 Scope :
Without a Student information System, managing and maintaining the
details of the student is a tedious job for any organization.
Student Information system will store all the details of the students including
their background information, educational qualifications, personal details and
all the information related to their resume .
Login module: Login module will help in authentication of user accounts
.Users who have valid login id and password can only login into their
respective accounts.
Search module: Suppose there are hundreds of students and from this we
have to search a particular student and we know the name of the student .In
manual system it is a tedious task though we know the name of the student,
but using this module we can easily search the student by specifying the
name of the student in the search criteria. Thus this module will help the
administrator in searching the student with various criteria easily.
Registration Module and Account Management: This module will help the
student get registered from anywhere if internet is present .This module will
really simplify the task of on paper registration. Also after successful
registration the user can update information and change their password as
and when required.
User
Management:
This
module
will
help
the
administrator
in
Student id
Student password
Student name
Student DOB
Student
address
mailing
Gender
Registration date
Student status
Contact no
Qualification
City
Resume
Image
1.3
1.4 Technologies :
2
PHP.
MYSQL
JAVASCRIPT
HTML
CSS
1.5 Overview:
The rest of this SRS is organized as follows:
Section 2 gives an overall description of the software. It gives what level of
proficiency is expected of the user, some general constraints while making the
software.
Section 3 gives specific requirements which the software is expected to
deliver. Some performance requirements and constraints are also given and
deal with other Non-Functional Requirements.
Section 4 deals with External Interface Requirements like Hardware and
Software Interface.
2.
OVERALL DESCRIPTION
2.1 Product Perspective :
Student
2. Student: Has the access rights to view and edit their personal details.
4
13
Specific Requirements :
3.1 Use Case
Reports
1.
The Website prompts the administrator for the user name and password.
The Administrator enters the user name and password.
The Website verifies the password and sets the users authorization.
The Administrator is given access to the Website to perform his tasks.
Alternative Flow:
The administrator enters invalid username and password then he
will not be allowed to enter the website.
4o status
The System prompts for the student detail from one of the above keys.
The student details are displayed on the screen.
Alternative Flow:
Student Not Found
If in the Display a student sub-flows, a student with the specified id
number does not exist, The system displays an error message. The
Administrator can then enter a different id number or cancel the
operation, at which point the use case ends.
Post conditions:
The student details are displayed on the screen already existing in the
system. The state of the system remains unchanged.
1o Resume
2o Image
Alternative Flow:
User ID not unique: if the user id entered is not unique then it will show an error
message.
Post conditions:
The student get registered on the website and to login into that particular
the administrator must enable it.
Alternative Flow:
The Student enters invalid username and password then he will
not be allowed to enter the website.
5o Qualification
1o City
2o Email1
3o Email2
4o Address
5o Description
Alternative Flow:
There is no alternative flow of this use case diagram.
Post conditions:
The student details get updated in the database.
DESIGN PHASE
1. Introduction
1.1) Scope and purpose
The purpose of the design phase is to develop a clear understanding of
what the developer want people to gain from his/her project. As you the
developer work on the project, the test for every design decision should be
"Does this feature fulfill the ultimate purpose of the project?"
A purpose statement affects the design process by explaining what the
developer wants the project to do, rather than describing the project itself.
The Design Document will verify that the current design meets all of the
explicit requirements contained in the system model as well as the implicit
requirements desired by the customer.
2.
3.
Data Design
4.
4.2
Decision Tree :
5. Conclusion
Hence we can conclude that the design phase of the SIMS give us the
information of all the processes used in the project and their relation.
TECHNOLOGY OVERVIEW
The technology selected for implementing Student Information Management System
is PHP/MYSQL.Apache is used as the HTTP server.The development was done in a
windows environment using adobe dreamweaver CS5.
PHP
PHP is a general-purpose scripting language that is especially suited to server-side
web development where PHP generally runs on a web server.PHP code is
embedded into the HTML source document.Any PHP code in a requested file is
executed by the PHP runtime, usually to create dynamic web page content.It can
also be used for command-line scripting and client-side GUI applications. PHP can
be deployed on many web servers and operating systems, and can be used with
many relational database management systems (RDBMS). 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.
MySQL
MySQL is a relational database management system (RDBMS)
[1]
that runs as a
database, we must create a table. A table is a section of the database for storing
related information. In a table we will set up the different fields which will be used in
that table. Creating a table in phpMyAdmin is simple, we just type the name, select
the number of fields and click the go button. we will then be taken to a setup screen
where you must create the fields for the database.Another way of creating databases
and tables in phpMyAdmin is by executing simple SQL statements.We have used
this method in order to create our database and tables.
Apache
The Apache HTTP Server is a web server software notable for playing a key role in
the initial growth of the World Wide Web. In 2009 it became the first web server
software to surpass the 100 million web site milestone. Apache is developed and
maintained by an open community of developers under the auspices of the Apache
Software Foundation. Since April 1996 Apache has been the most popular HTTP
server software in use. As of November 2010 Apache served over 59.36% of all
websites and over 66.56% of the first one million busiest websites.
XAMPP
XAMPP is a small and light Apache distribution containing the most common web
development technologies in a single package. Its contents, small size, and
portability make it the ideal tool for students developing and testing applications in
PHP and MySQL. XAMPP is available as a free download in two specific packages:
full and lite. While the full package download provides a wide array of development
tools, XAMPP Lite contains the necessary technologies that meet the Ontario Skills
Competition standards.The light version is a small package containing Apache HTTP
Server, PHP, MySQL, phpMyAdmin, Openssl, and SQLite.
distributed
through
the
Apache
Friends
website
at
the
address:
XAMPP splash
screen.
In order to stop all Apache processes we do not close the running terminal
application, but instead run another batch file in the xampplite directory called
apache_stop.bat.
by
opening
their
respective
batch
files:
apache_start.bat
and
mysql_start.bat. Along with Apache and MySQL running in the background, we type
http://localhost/phpMyAdmin/ into our web browser. If successful we will be
presented with a phpMyAdmin start page similar to the one shown below.
The first step with phpMyAdmin running is creating a new database.We create a new
database by directly executing SQL statements as shown below.The successful
execution of the sql querry creates a database student with two tables in it.The
tabels are admin_login and student_information.We also inserted values in the
admin table.The screenshot below shows the successful execution of the query thus
creation of a database named student.
PROJECT DESCRIPTION
Introduction
Student Information Management System can be used by education institutes to
maintain the records of students easily. Achieving this objective is difficult using a
manual system as the information is scattered, can be redundant and collecting
relevant information may be very time consuming. All these problems are solved
using this project
The directory structure of the project is as follows:
Page
to
display
all
registered
students
to
the
account
facility.This
functionality
is
only
available
to
the
administrator.
Footer.php : Footer file for all pages.
Header.php : Header file for login page and homepage of the site.
Index.php : Homepage of the website.
Logout.php : Logout handler page.It Destroys all session variables thus
ending user session.
Search.php : Search page to search students.It can only be used by
administrator.Students can be searched using different fields such as user
id,account status etc.
Search_Result.php : Page to display search results to the administrator.
Student_information :
13o
14o
15o
16o
17o
18o
Feature
s
Student :
6o Login/Logout
7o View profile
8o Edit profile
9o Change password
10o
Source Code
Index.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="Style.css" type="text/css"/>
<title>Home Page</title>
</head>
<body>
<table width="100%" height="100%"
> <tr height="15%">
<td><?php include 'Header.php';?></td>
</tr>
<tr height="80%">
<td align="center" valign="baseline"><table width="70%">
<tr height="10%">
<td align="center"><a href="index.php" class="stylelink" style="textdecoration:none">Home</a></td>
<td align="right"><a href="Student_login.php" class="stylelink"
style="text-decoration:none">Student Login</a>
<a href="Admin_login.php" class="stylelink" style="textdecoration:none">Administrator Login</a></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table></td>
</tr>
<tr height="5%">
<td><?php include 'Footer.php';?></td>
</tr>
</table>
</body>
</html>
Student_login.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Login Page</title>
<link rel="stylesheet" href="Style.css"
type="text/css"/> <script type="text/javascript">
function validate()
{
if(document.form1.st_id.value=="")
{
alert("Please enter your login Id.");
document.form1.st_id.focus();
return false;
}
if(document.form1.st_pass.value=="")
{
alert("Please enter your password.");
document.form1.st_pass.focus();
return false;
}
}
</script>
</head>
<body onLoad="javascript:document.form1.st_id.focus()">
<form name="form1" method="post" action="Student_login_handler.php"
onSubmit="return validate();">
<table width="100%" height="100%" >
<tr>
<td height="15%"><?php include 'Header.php';?></td>
</tr>
<tr>
<tr>
<td class="stylered" colspan="4" align="center">This
Login Id( <?=$_GET['student_id']?>) already exists.Please, try again with
another Login Id</td>
</tr>
<?php
}else if($_GET['flag'] == "error") {
?>
<tr>
<td class="stylered" colspan="4" align="center">Error
while inserting data. Please, try again.</td>
</tr>
<?php
}
?>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="4"><table width="30%" border="1" align="center"
cellpadding="3" cellspacing="0" bordercolor="#CCCCCC"
bgcolor="#CCCCCC">
<tr align="center" bgcolor="#999999">
<td colspan="2" class="stylebig">Student Login Here</td>
</tr>
</html>
Student_login_handler
<?php
session_start();
include 'Connect.php';
$flag = "";
$student_id = $_POST['st_id'];
$st_pass = $_POST['st_pass'];
$query = "select last_login_date from student_information where
student_id='$student_id' and student_password='$st_pass' and
student_status ='Enable'";
$result = mysql_query($query,$link_id);
if(mysql_error() != null){
die(mysql_error());
}
if($date = mysql_fetch_array($result))
{
$lastdate = $date['last_login_date'];
$date2 = date("d-m-Y h:i A",strtotime($lastdate));
$_SESSION['userid'] = $_POST['st_id'];
$_SESSION['lastlogin'] =$date2;
$_SESSION['type'] = "Student";
mysql_query("update student_information set
last_login_date=now() where student_id='$student_id'",$link_id);
if(mysql_error() != null){
die(mysql_error());
}
header("location:Student_Home.php");
die();
}
else
{
$flag = "invalid";
header("location:Student_login.php?flag=$flag");
die();
}
?>
Student_Registration.php
<html>
<head>
<link rel="stylesheet" href="Style.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Student Registration Page</title>
<script src="Validation.js"></script>
<script type="text/javascript">
function validation()
{
if(document.form1.first_name.value=="")
{
alert("Please enter your first name.");
document.form1.first_name.focus();
return false;
}
if(document.form1.last_name.value=="")
{
alert("Please enter your last name.");
document.form1.last_name.focus();
return false;
}
if(document.form1.dob.value=="")
{
document.form1.address.focus();
return false;
}
if(document.form1.description.value != "" &&
document.form1.description.value.length > 200){
alert("You can enter description upto 200 characters only.");
document.form1.description.focus();
return false;
}
if(document.form1.st_id.value=="")
{
alert("Please enter your desired student id.");
document.form1.st_id.focus();
return false;
}
if(document.form1.st_pass.value=="")
{
alert("Please enter your desired password.");
document.form1.st_pass.focus();
return false;
}
if(document.form1.retype.value=="")
{
alert("Please enter retype password.");
document.form1.retype.focus();
return false;
}
if(document.form1.st_pass.value != document.form1.retype.value)
{
alert("Password and retype password are not
same."); document.form1.st_pass.value = "";
document.form1.retype.value = "";
document.form1.st_pass.focus();
return false;
}
}
</script>
</head>
<body onLoad="javascript:document.form1.first_name.focus()">
<form name="form1" method="post"
maxlength="50"></td>
<td>Last Name <span class="stylered">*</span> </td>
<td><input name="last_name" type="text" id="last_name"
maxlength="30"></td>
</tr>
<tr class="stylesmall">
<td>Gender</td>
<td><input name="gender" type="radio" value="Male"
checked> Male<input name="gender" type="radio"
value="Female"> Female</td>
</tr>
<tr class="stylesmall">
<td>Address</td>
<td colspan="3"><textarea name="address" cols="45" rows="2"
id="address"></textarea></td>
</tr>
<tr class="stylesmall">
<td> Description</td>
<td colspan="3"><textarea name="description" cols="45" rows="3"
id="description"></textarea></td>
</tr>
<tr bgcolor="#EEEEEE">
<td colspan="4" align="center" class="stylemedium">Login
Information</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr class="stylesmall">
<td>Desired ID <span class="stylered">*</span> </td>
<td><input name="st_id" type="text" id="st_id" maxlength="20"></td>
<td> </td>
<td> </td>
</tr>
<tr class="stylesmall">
<td>Password <span class="stylered">*</span> </td>
<td><input name="st_pass" type="password" id="st_pass"
maxlength="20"></td>
<td align="right">Retype Password<span class="stylered"> *</span>
</td>
<td><input name="retype" type="password" id="retype"
maxlength="20"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr bgcolor="#EEEEEE">
<td colspan="4" align="center" class="stylemedium"> Resume
Information</td>
</tr>
<tr class="stylesmall">
<td>Upload Resume </td>
</tr>
<tr class="stylesmall">
<td>Upload Image </td>
onClick="self.location='Student_login.php'"></td>
</tr>
</table></td>
</tr>
<tr>
<td width="100%" height="5%" align="center"><?php include
'Footer.php';?></td>
</tr>
</table>
</form>
</body>
</html>
Student_Registration_handler.php
<?php
include 'Connect.php';
$flag = "success";
function rollbackData(){
die(mysql_error());
}
}
$student_id = $_POST['st_id'];
$student_pass = $_POST['st_pass'];
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$gender = $_POST['gender'];
$contact_no = $_POST['contact_no'];
$qualification = $_POST['qualification'];
$city = $_POST['city'];
$email1 = $_POST['email1']; $email2
= $_POST['email2']; $address =
$_POST['address']; $description =
$_POST['description']; $resumename
= "";
$imagename = "";
$dobdate = date("Y-m-d",strtotime($_POST['dob']));
/*
This block is used to check whether the student_id already exits
in database.
*/
$select_query="select student_id from student_information where
student_id = '$student_id'";
$result_set = mysql_query($select_query,$link_id);
if($row = mysql_fetch_array($result_set))
{ $flag="exists";
header("location:Student_login.php?
flag=$flag&student_id=$student_id");
die();
}
else{
/*
This block is used to insert the student record in database
if the student_id is already not present in the database.
*/
mysql_query("SET AUTOCOMMIT = 0 ");
if(mysql_error() != null){
die(mysql_error());
}
$query = "insert into
student_information(student_id,student_password,first_name,last_name,regis
tration_date,gender,date_of_birth,";
$query .=
"student_status,contact_no,qualification,city,email1,email2,address,descriptio
n)";
$query .= "
values('$student_id','$student_pass','$first_name','$last_name',now(),'$gender
','$dobdate','Disable','$contact_no',";
$query .=
"'$qualification','$city','$email1','$email2','$address','$description')";
$result = mysql_query($query,$link_id);
if(mysql_error() != null){
die(mysql_error());
}
if($result){
if($_FILES['resume']['name'] != ""){
$filename = $_FILES['resume']['name'];
$ext = strrchr($filename,".");
$resumename = $student_id;
$resumename .= "_".$filename;
/*
if image is successfully
uploaded then resumename is stored in database.
*/
mysql_query("update
student_information set resume='$resumename' where
student_id='$student_id'", $link_id);
if(mysql_error() != null)
{ die(mysql_error()
);
}
$flag = "success";
}else{
rollbackData();
}
}
else{
rollbackData();
die("You can upload resume of 1 MB
size only. Please, try again.");
}
}
else{
rollbackData();
die("You can upload resume of .txt, .pdf,
.doc extensions only. Please, try again.");
}
}
if($_FILES['image']['name'] != ""){
$filename = $_FILES['image']['name'];
$ext = strrchr($filename,".");
$imagename = $student_id;
$imagename .="_". $filename;
if($ext ==".jpg" || $ext ==".jpeg" || $ext ==".JPG" ||
$ext ==".JPEG" || $ext ==".gif" || $ext ==".GIF"){
$size = $_FILES['image']['size'];
if($size > 0 && $size < 1000000){
$archive_dir = "images";
$userfile_tmp_name =
$_FILES['image']['tmp_name'];
if(move_uploaded_file($userfile_tmp_name, "$archive_dir/
$imagename")){
/*
if image is successfully
uploaded then imagename is stored in database. */
mysql_query("update
student_information set image='$imagename' where
student_id='$student_id'", $link_id);
$flag = "success";
if(mysql_error()!=null){
die(mysql_error());
}
}
else{
if(file_exists('resumes/' .
$resumename)) {
unlink('resumes/' .
$resumename);
}
rollbackData();
}
}
else{
if(file_exists('resumes/' .
$resumename)) {
unlink('resumes/' .
$resumename);
}
rollbackData();
die("You can upload image of 1 MB
size only. Please, try again.");
}
}
else{
if(file_exists('resumes/' . $resumename)) {
unlink('resumes/' . $resumename);
}
rollbackData();
die("You can upload images of .jpg, .jpeg,
.gif extensions only. Please, try again. ");
}
}
}
else{
$flag="error";
}
if($flag == "success")
{ mysql_query(" COMMIT
"); $flag="success";
if(mysql_error() != null){
die(mysql_error());
}
/*
This block is used to send email to the
successfully registered users.
*/
/*
$to = $email1;
$subject = 'Congratulations';
$message = 'Congratulations you are registered in our
site.\r\n\r\n';
Admin_Edit_Student_Info.php
<?php
session_start();
$session_id = $_SESSION['userid'];
if($session_id == null){
header("location:index.php");
die();
}
include 'Connect.php';
$student_id = $_REQUEST['student_id'];
$query = "select * from student_information where
student_id='$student_id'";
$result = mysql_query($query, $link_id);
$data = mysql_fetch_array($result);
?>
<html>
<head>
<link rel="stylesheet" href="Style.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Edit Student Information By Admin</title>
<script src="Validation.js"></script>
<script type="text/javascript">
function validation()
{
if(document.form1.first_name.value=="")
{
alert("Please enter your first name.");
document.form1.first_name.focus();
return false;
}
if(document.form1.last_name.value=="")
{
alert("Please enter your last name.");
document.form1.last_name.focus();
return false;
}
if(document.form1.dob.value=="")
{
alert("Please enter your date of
birth."); document.form1.dob.focus();
return false;
}
else
{
var date = document.form1.dob.value;
var yes = checkDate(date);
if(!yes)
{
alert("Please Enter a valid date of
birth."); document.form1.dob.focus();
return false;
}
}
if(document.form1.email1.value=="")
{
alert("Please enter your primary email.");
document.form1.email1.focus();
return false;
}
else
{
var isEmail = emailValidator(document.form1.email1.value);
if(!isEmail)
{
alert("Please enter a valid primary
email."); document.form1.email1.focus();
return false;
}
}
if(document.form1.email2.value != "")
{
var isEmail = emailValidator(document.form1.email2.value);
if(!isEmail)
{
alert("Please enter a valid secondary email.");
document.form1.email2.focus();
return false;
}
}
if(document.form1.address.value != "" &&
document.form1.address.value.length > 100){
alert("You can enter address upto 100 characters only.")
document.form1.address.focus();
return false;
}
if(document.form1.description.value != "" &&
document.form1.description.value.length > 200){
alert("You can enter description upto 200 characters only.")
document.form1.description.focus();
return false;
}
}
function SetAll()
{
document.form1.qualification.value="<?php echo $data['qualification'];?
>"; var gen = "<?php echo $data['gender'];?>";
var gend = document.form1.gender.length;
for(var i =0; i<gend; i++)
{
if(document.form1.gender[i].value == gen)
document.form1.gender[i].checked=true;
}
}
</script>
</head>
<body onLoad="javascript:SetAll()">
<form name="form1" method="post"
action="Admin_Edit_Student_Info_Handler.php" onSubmit="return
validation()">
<input type="hidden" name="student_id" value="<?php echo
$student_id; ? >;">
<table width="100%" height="100%" >
<tr bgcolor="#E1E1E1">
<td width="100%" height="15%" align="center"><?php include
'Admin_Header.php';?></td>
</tr>
<tr>
<td width="100%" height="80%" align="center"><table width="80%"
border="1" cellpadding="2" cellspacing="0" bordercolor="#EEEEEE">
<tr>
<tr class="stylesmall">
<td align="left">Qualification : </td>
<td align="left"><select name="qualification" id="qualification">
<option value="High School">High School</option>
<option value="Graduate">Graduate</option>
<option value="MCA">MCA</option>
<option value="BCA">BCA</option>
<option value="Master Degree">Master
Degree</option> </select></td>
<td align="left">Contact No</td>
<td align="left"><input name="contact_no" type="text" id="contact_no"
value="<?php echo $data[$contact_no];?>" size="25" maxlength="20"></td>
</tr>
<tr class="stylesmall">
<td align="left">Primary Email : </td>
<td align="left"><input name="email1" type="text" id="email1"
value="<?php echo $data['email1'];?>" size="25" maxlength="100"></td>
</tr>
<tr class="stylesmall">
<td align="left">City : </td>
<td colspan="3" align="left"><input name="city" type="text" id="city"
value="<?php echo $data['city'];?>" size="25" maxlength="30"></td>
</tr>
<tr class="stylesmall">
<td align="left">Address : </td>
<td colspan="3" align="left"><textarea name="address"
rows="2" cols="40"><?php echo $data['address'];?></textarea></td>
</tr>
<tr class="stylesmall"> <td
align="left">Description : </td>
<tr>
<td colspan="4" align="center"><input name="update"
type="submit" id="update" value="Update">
<input name="close" type="button" id="close" value="Close"
onClick="self.location='DisplayAll.php'"></td>
</tr>
</table></td>
</tr>
<tr bgcolor="#E1E1E1">
<td width="100%" height="5%" align="center"><?php include
'Footer.php';?></td>
</tr>
</table>
</form>
</body>
</html>
Admin_Edit_Student_Info_Handler
<?php
session_start();
$session_id = $_SESSION['userid'];
if($session_id == null){
header("location:index.php");
die();
}
include 'Connect.php';
$student_id = $_POST['student_id'];
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$gender = $_POST['gender'];
$contact_no = $_POST['contact_no'];
$qualification = $_POST['qualification'];
$city = $_POST['city'];
$email1 = $_POST['email1']; $email2
= $_POST['email2']; $address =
$_POST['address']; $description =
$_POST['description'];
$dateofbirth = date("Y-m-d",strtotime($_POST['dob']));
$flag = "";
$query = "update student_information set
first_name='$first_name',last_name='$last_name',gender='$gender',date_of_
birth='$dateofbirth',";
$query .=
"qualification='$qualification',contact_no='$contact_no',email1='$email1',email
2='$email2',city='$city',address='$address',description='$description' ";
$query .= " where student_id='$student_id'";
$result = mysql_query($query, $link_id);
if(mysql_error() != null){
die(mysql_error());
}
if($result)
{
$flag = "success";
}
else
{
$flag = "error";
}
header("location:Admin_Edit_Student_Info.php?
flag=$flag&student_id=$student_id");
?>
Validation.js
function checkDate(dobStr)
{
var arr = dobStr.split(/-/);
if(arr.length != 3){
return false;
}
var ddStr = arr[0];
var mmStr = arr[1];
var yyStr = arr[2];
if(isNaN(ddStr)){
return false;
}
if(isNaN(mmStr))
{ return
false;
}
if(isNaN(yyStr))
{ return
false;
}
dd=parseInt(ddStr,10);
mm=parseInt(mmStr,10);
yy=parseInt(yyStr,10);
if(dd < 1 || dd > 31){
return false;
}
if(mm < 1 || mm > 12){
return false;
}
if(yy < 1900)
{ return
false;
}
if(yy > 3000)
{ return
false;
}
switch (mm)
{ case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
return true;
case 4:
case 6:
case 9:
case 11:
if(dd<=30)
return true;
else
return false;
case 2: if(yy
%100==0)
{ if(yy%400==0)
{
if(dd<=29)
return true;
else
return false;
}
}
else
{ if(yy%4==0){
if(dd<=29)
return true;
else
return false;
}
}
if(dd<=28)
{ return true;
}
else
{ return false;
}
default :
return false;
}
}
function emailValidator(elem)
{
var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if(elem.match(emailExp))
{
return true;
}
else
{
return false;
}
}
Style.c
ss
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
.stylebig {
font-size: 18px;
font-family: "Times New Roman", Times, serif;
font-weight: bold;
}
.stylemedium { fontsize: 14px;
font-family: "Times New Roman", Times, serif;
font-weight: bold;
}
.stylesmall {
font-family: "Times New Roman", Times, serif;
font-size: 12px;
font-weight: bold;
}
.stylegreen {font-family: "Times New Roman", Times, serif; font-size: 12px;
font-weight: bold; color: #007F00; }
.stylered {
font-size: 12px;
font-family: "Times New Roman", Times, serif;
color: #FF0000;
font-weight: bold;
}
.stylegrey {font-family: "Times New Roman", Times, serif; font-size: 12px;
font-weight: bold; color: #550055; }
Connect.php
<?php
$host = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "student";
$link_id = mysql_connect($host, $dbusername, $dbpassword);
if(!$link_id){
die(mysql_error("Can`t Connect To database"));
}
else{
$db = mysql_select_db($dbname, $link_id);
}
if(!$db){
die(mysql_error("Can`t select database"));
}
return;
?>
SNAPSHOTS
After
registration
successful
the
user
was
uploaded
during
above
page
Students can edit their profiles by using the edit profile option on their homepage.the
above page is used for editing student information.
password in order to change the
password.
can
enable/disable
accounts
view/edit
information.
This is the
displayall
page
as
their
well
as
students
This page shows the change in account status.after successful change a message is
displayed to the administrator.
we search for all the students with theirs
accounts enabled.
This is the search result display page.the administrator can view profile of any of the
searched students from here.If there are no results then an appropriate message is
displayed.
Bibliography