Vous êtes sur la page 1sur 26

A project report

on
Student Registration System



Stream : BSc. CSIT, 4
th
Semester
Subject : System Analysis and Design



1

APPROVAL SHEET
Project Title: TRIOZ RegSys (a student registration system)



Team Members:
a. Anup Shrestha (09-00001-5)

b. Arun Munikar (09-00002-5)

c. Sagar Manandhar (09-00013-5)



Project Approved By:


Mr. Dilli Pd. Sharma,
Lecturer, Coordinator
BSc.CSIT Department,
Prime College

2

ACKNOWLEDGEMENT

As per the requirement of the syllabus of Bachelor of Science Computer Science and
Information Technology 4
th
semester, we are required to prepare a project report for the
subject System Analysis and Design on any of the desired topic. Hence we have prepared a
report of a system that helps in the systematic access and registration of the student
information managed by academic institution.
We attempted to make an application of student registration system to Prime College. It
is essential to make a properly managed student registration system so that there can be easy
access to the students records and get the desired information to whom it may be required at
any time. After all it is far better than the traditional approach.
We are grateful to Dilli Pd. Sharma Sir for providing us an oppurtunity to do a project
like this. We would like to thank our facilitator Mr. Abhinav Singh Dangol for assisting and
guiding us throughout this project. We would like to thank Prime College for providing lab to
perform miscellaneous task related to our project. We would also like to thank all of our friends
for their valuable suggestions and comments on the project which helped us to enhance and
rectify most of the core features of this project.


3

Table of Contents

1. Introduction to the System

1.1 Problem Definition

1.2 Scope of the Project
1.3 Benefits of the Project
1.4 Limitation of the Project
1.5 Feasibility Assessment
2. Analysis of the system

2.1 System Requirement

2.2 Tools used

2.3 Context diagram
2.4 DFD
3 System Design
3.1 E-R Diagram
3.2 Database Tables
3.3 Interface Design
4 System Implementation
4.1 Coding
4.2 Snapshot / Output
5 References

4

1. Introduction to System
When information systems are designed to provide information for effective decision
making of the student by the authorized person, they are called the management information
system and the management which involves the well management of the student information
in any of the institute is called the Student Information Management System.
The system provides information on the past, present and project future and the
relevant event inside and outside the organization regarding the student registration. It may be
defined as a planned and integrated system for gathering relevant data, converting to the right
information and supplying the right information of the student to the authorized person. The
main purposed of this information system is to provide the right information to the right people
at any time.
Every semester, department within the university has scheduled course offerings. These
course offerings indicate the section of each course that will be offered to the student. Prior to
each faculty, the registration process occursstudents registration for the courses based on
the course offering by the college (Science, Management, and Bachelor). The system first
ensures that the student is a valid student at the institution. Then the students request is then
verified to ensures, that it is complete, that the course is valid, and that the enrollment limit has
not already been reached.
In case of errors(invalid student, course, of if the class is full), the student is notified by the
system and the process ceases. If there are no errors, the student is registered for the course.

1.1 Problem Definition
Any institution for the study of 10+2, Bachelor and Masters Programs, there are
students above 200 students studying in different faculties. Every year the number of
the student grows, and the management body has to handle records of lots of student.
Though it has used an Information System, but it is totally manual one. And hence it is
needed an upgrade of the system to that of the Computer Based Information System
(CBIS). The college has computers in every department , but they used just for the paper
works and for simple jobs as creating application, typing the notices, creating
attendance sheets, etc. so, there is the requirement of the automated application for
the student registration process.

1.2 Scope of the project
Any institution needs to keep the record of the student who are enrolled in their
institution which is possible only if the institution has a good and proper student
5

management system which is provided by an application developed for the student
management. This system provides the proper facilities for the management of the
student registration process in proper way so that each faculty member can access the
information of the enrolled student and take the corrective measures.

1.3 Benefits of the project
The system is beneficial in terms of easy traction, time consumption,
confidentiality and low manpower with low effort. The system benefits its users by
eliminating the manual work saving their time and also provides intangible benefits by
providing better and faster employee services, accurate information to the manager.

1.4 Limitations of the project
This project is a capable of solving problems related to new students
registration. Yet it has some limitations on these topics.
This system is a single user system. Only one administrator has privilege to
access the administrators end.
There is no feature of email validation. It takes whatever is entered. In case
of e-mail id its an error.
This system accepts null fields during save process which should not be
accepted.
Eg. First name should never be null.
In this system, there are fixed details to be entered about student. If there is
more information on any of the new students, there is no any field for such
information.
We tried to make it precise by restricting any student studying science from
registering in management stream too. This has restricted student from
registering who has cleared +2 and willing to join bachelors.
Even administrator does not have the privilege to retrieve a password. So an
administrator must be cautious regarding password.

1.5 Feasibility Assessment
This project is just for basic data entry system of student for an institution which
does not use vast web technologies. It is the outcome of basic web design and
programming. Hence it is technically and economically feasible to any institution.
2. Analysis of the system
6

2.1 System Requirement
PHP 5.3 +
MySQL 5.0.4 +
Apache 2.X +

2.2 Tools used
After thorough interviews and questioning the System Analysis and Design phase was
conducted where we drew use case diagrams, Data flow diagram and the application was
developed using these designs. Entity Relationship Diagram(ERD) is used too observed the
overall logical structure of the databases graphically.
For the development of the software, the following tools and Technology were used:
MS Word 2010 (Report Writing)
PHP (Programming Language and Coding)
Javascript (Programming Language and Coding)
Microsoft SQL
HTML (Programming Language and Coding)


2.3 Context Diagram


Student
Info student
info
Student Student Registration Administration
System


7

2.4 Data Flow Diagram




8

3. System Design
3.1. E-R Diagram





student
Studentid
name
firstname
lastname
dob
gender
fathername
address
nationality
telephone
email
mobile
Reads in Is
student
of
class
guardian
studentid
level
stream
semester
relation
address
mobile email
studentid
name
9

3.2 Database Tables
Student table

Class table

Guardian table



10

3.3 Interface Design
Front End Wireframe

Logo Block
Error Showing Login
Block


Personal information input fields


Contact information input fields
Class/course information


Guardian information input fields




Footer Block


11

Login page Wireframe
Logo Header



Login Box Block




Administration End Wireframe
Logo Header

Information/Error ( on form )showing Block Logout Block

Class Information Search Block
Block
Error (while
searching) Showing Block
Personal Information,
Contact Information, Total
Guardian Information Block Information
Block
12

4. System Implementation
4.1. Coding
PHP codes in connections.php file
<?php
$db['host']="localhost";
$db['user_name']="root";
$db['pass_word']="test";
$db['databasename']="trioz";
$conn=mysql_connect($db['host'],$db['user_name'],$db['pass_word']);
if(!$conn){
die("Error in connecting the database");
}
mysql_select_db($db['databasename'],$conn);
?>
PHP codes for index.php file for the insertion of student records. Null values are not accepted and
duplicate values are rejected giving out errors.

<?php
include("connections.php");
if(!isset($_POST["$hasError"])){
// if(isset($_POST["submit"])){
//take in the data
$firstname=$_POST["firstname"];
$lastname=$_POST["lastname"];
$dob=$_POST["year"]."-".$_POST["month"]."-".$_POST["day"];
$gender=$_POST["gender"];
$fname=$_POST["fathername"];
$address=$_POST["address"];
$nationality=$_POST["nationality"];
$telephone=$_POST["telephone"];
$mobile=$_POST["mobile"];
$email=$_POST["email"];
$gname=$_POST["gname"];
$gmobile=$_POST["gmobile"];
$gemail=$_POST["gemail"];
$gaddress=$_POST["gaddress"];
$grelation=$_POST["grelation"];
$subjectchoice=$_POST["subjectChoice"];
$stream=$_POST["stream"];
$bstream=$_POST["bstream"];
13

$subjects=$_POST["subjects"];
$semester=$_POST["semester"];
//if the photo has already been uploaded
if(!isset($_POST["upload"]) && isset($_POST["submit"])){
//check for blank values in mandatory fields
if($firstname==""){
$hasError=true ; //there is some error
$errortxt="<img src=\"images/cross.png\" style=\"top:3px;position:relative;\"/> First
name cannot be empty.<br/>";
//echo $errortxt;
}
if($lastname==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Last name cannot be empty.<br/>";
}
if($gender==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Gender is not selected.<br/>";
}
if($fname==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Father's name cannot be empty.<br/>";
}
if($address==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Address cannot be empty.<br/>";
}
if($nationality==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Nationality cannot be empty.<br/>";
}
if($gname==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Guardian's name cannot be empty.<br/>";
}
if($gaddress==""){
$hasError=true;
14

$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Guardian's address cannot be empty.<br/>";
}
if($grelation==""){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Guardian's relation with student cannot be empty.<br/>";
}
if($subjectchoice=="nothing"){
$hasError=true;
$errortxt=$errortxt."<img src=\"images/cross.png\"
style=\"top:3px;position:relative;\"/> Class/Course information not selected.<br/>";
}

//check if there is any record duplication
$check_for_duplication=mysql_query("select * from student where
firstname=\"".$firstname."\" and lastname=\"".$lastname."\" and dob=\"".$dob."\" and
fathername=\"".$fname."\"",$conn);
if(mysql_num_rows($check_for_duplication)>0)
{
$hasError=true;
$errortxt="<img src=\"images/cross.png\" style=\"top:3px;position:relative;\"/> Student
with same data already present in the database.";
}

if(!$hasError){
//checking number of previous records
$count_query=mysql_query("SELECT max(studentid) from student",$conn);
//$row=mysql_num_rows($count_query);
$row_array=mysql_fetch_array($count_query);
$row=$row_array[0];


$row++;

//building query for data insertion for student information
$insert_query="INSERT INTO student
(studentid,firstname,lastname,dob,gender,fathername,address,nationality,telephone,mobile,email)";
$insert_query.=" VALUES (";
$insert_query.="'".$row."',";
$insert_query.="'".$firstname."',";
$insert_query.="'".$lastname."',";
$insert_query.="'".date('Y-m-d',strtotime($dob))."',";
$insert_query.="'".$gender."',";
15

$insert_query.="'".$fname."',";
$insert_query.="'".$address."',";
$insert_query.="'".$nationality."',";
$insert_query.="'".$telephone."',";
$insert_query.="'".$mobile."',";
$insert_query.="'".$email."')";
//query for storing guardian information
$insert_query2="INSERT INTO guardian
(studentid,name,mobile,email,address,relation)";
$insert_query2.=" VALUES (";
$insert_query2.="'".$row."',";
$insert_query2.="'".$gname."',";
$insert_query2.="'".$gmobile."',";
$insert_query2.="'".$gemail."',";
$insert_query2.="'".$gaddress."',";
$insert_query2.="'".$grelation."')";
//query for storing class/course information
$insert_query3="INSERT INTO class (studentid,level,stream,semester) VALUES (";
$insert_query3.="'".$row."',";
if($subjectchoice=="1"){
$insert_query3.="'Plus_two',";
$insert_query3.="'".$stream."',";
$insert_query3.="'".$subjects."')";
}
else{
$insert_query3.="'Bachelor',";
$insert_query3.="'".$bstream."',";
$insert_query3.="'".$semester."')";
}

$res=mysql_query($insert_query,$conn);
$res2=mysql_query($insert_query2,$conn);
$res3=mysql_query($insert_query3,$conn);
if(!$res || !$res2 || !$res3){
die("Error in executing database insertion commands.");
}
//now unset all the used variable for the form

unset($firstname);unset($lastname);unset($dob);unset($gender);unset($fname);unset($address
);unset($nationality);unset($telephone);unset($mobile);unset($email);unset($gname);unset($gmobile);
unset($gaddress);unset($gemail);unset($grelation);unset($stream);unset($bstream);unset($subjectchoi
e);unset($semesters);unset($subjects);
?>

16

PHP codes for login.php file
<?php
//check if the form has been submitted
if(isset($_POST['submit'])){
//get the username and password
$username=$_POST['username'];
$password=$_POST['password'];
include("connections.php");
$sql_query="select password from users where username='".$username."'";
$sql_result=mysql_query($sql_query,$conn);
while($row=mysql_fetch_array($sql_result)){
if(md5($password)==$row['password']){
$_SESSION['username']=$username;
$_SESSION['islogged']=true;
header('Location: administration.php');
exit();
//echo "Right answer";
}
}//end of while
echo "<span style=\"color:#990000; font-family:arial,tahoma,helvetica;\">Invalid
username or password.</span>";
}
?>

PHP codes for logout.php file
<?php
ob_start(); //starting the output buffer
session_start();
session_destroy();

?>
You have successfully been logged out.
Redirecting you to login page.
<?php
header('location:login.php');
ob_flush();//clearing the output buffer
?>

PHP codes for administration.php file

<?php
include ("connections.php");
if(isset($_GET["searchtext"])){
$txtsearch=$_GET["searchtext"];
17

$student=mysql_query("select * from student where
lcase(firstname)=\"".$txtsearch."\"",$conn);
if (mysql_num_rows($student)>1){
$hasError=true;
$errorText="Duplicate name found.";
}
else if(mysql_num_rows($student)==1){
$hasError=false;
$errorText="";
$student_array=mysql_fetch_array($student);
$sid=$student_array["studentid"];
$class=mysql_query("select * from class where studentid =\"".$sid."\"",$conn);
$guardian=mysql_query("select * from guardian where studentid =\"".$sid."\"",$conn);
//$student_details=mysql_fetch_array($student);
$class_array=mysql_fetch_array($class);
$guardian_array=mysql_fetch_array($guardian);
//passing the array value to php variables
//student information
$firstname=$student_array["firstname"];
$lastname=$student_array["lastname"];
$dob=$student_array["dob"];
$gender=$student_array["gender"];
$fathername=$student_array["fathername"];
$address=$student_array["address"];
$nationality=$student_array["nationality"];
$telephone=$student_array["telephone"];
$mobile=$student_array["mobile"];
$email=$student_array["email"];
//guardian information
$gname=$guardian_array["name"];
$gemail=$guardian_array["email"];
$gmobile=$guardian_array["mobile"];
$gaddress=$guardian_array["address"];
$grelation=$guardian_array["relation"];
//class information
$level=$class_array["level"];
$stream=$class_array["stream"];
$semester=$class_array["semester"];
}
else{
$hasError=true;
$errorText="Student not Found";
}
}
18


//calculating total number of student in each level distinctly
global $total_student;
global $total_plustwo,$total_bachelor;
global $total_science,$total_management;
global $total_bba,$total_bbs,$total_bim,$total_bsc;

$sql="select * from student";
$res=mysql_query($sql,$conn);
$total_student=mysql_num_rows($res);
$sql="select * from class where level=\"Plus_two\"";
$res=mysql_query($sql,$conn);
$total_plustwo=mysql_num_rows($res);
$sql="select * from class where level=\"Bachelor\"";
$res=mysql_query($sql,$conn);
$total_bachelor=mysql_num_rows($res);
$sql="select * from class where stream=\"BSc.CSIT\"";
$res=mysql_query($sql,$conn);
$total_bsc=mysql_num_rows($res);
$sql="select * from class where stream=\"BBA\"";
$res=mysql_query($sql,$conn);
$total_bba=mysql_num_rows($res);
$sql="select * from class where stream=\"BBS\"";
$res=mysql_query($sql,$conn);
$total_bbs=mysql_num_rows($res);
$sql="select * from class where stream=\"BIM\"";
$res=mysql_query($sql,$conn);
$total_bim=mysql_num_rows($res);
$sql="select * from class where stream=\"Science\"";
$res=mysql_query($sql,$conn);
$total_science=mysql_num_rows($res);
$sql="select * from class where stream=\"Management\"";
$res=mysql_query($sql,$conn);
$total_management=mysql_num_rows($res);
?>
PHP codes for edit.php file from which information of any students can be edited and deleted as well.
<?php
include ("connections.php");
if(isset($_POST["delete"]) || isset($_POST["save"])){
$sid=$_POST["s_ID"];
//saving the values to variables
$firstname=$_POST["firstname"];
$lastname=$_POST["lastname"];
$age=$_POST["age"];
19

$dob=$_POST["dob"];
$gender=$_POST["gender"];
$telephone=$_POST["telephone"];
$mobile=$_POST["mobile"];
$email=$_POST["email"];
$fathername=$_POST["fathername"];
$address=$_POST["address"];
$nationality=$_POST["nationality"];
$gname=$_POST["gname"];
$gaddress=$_POST["gaddress"];
$gmobile=$_POST["gmobile"];
$gemail=$_POST["gemail"];
$grelation=$_POST["grelation"];
$level=$_POST["level"];
$stream=$_POST["stream"];
$semester=$_POST["semester"];

if(isset($_POST["delete"])){
//echo $_POST["s_ID"];
mysql_query("delete from class where studentid=".$sid,$conn);
mysql_query("delete from guardian where studentid=".$sid,$conn);
mysql_query("delete from student where studentid=".$sid,$conn);
$hasError=false;$errorText=""; $hasInfo=true;
$infoText="Student with name: ".$firstname." ".$lastname." has been deleted from the
database.";
}
else if(isset($_POST["save"])){

//building update query
$update_query="update student set";
$update_query.=" firstname=\"".$firstname."\",";
$update_query.="lastname=\"".$lastname."\",";
$update_query.="dob=\"".date("Y-m-d",strtotime($dob))."\",";
$update_query.="gender=\"".$gender."\",";
$update_query.="fathername=\"".$fathername."\",";
$update_query.="address=\"".$address."\",";
$update_query.="nationality=\"".$nationality."\",";
$update_query.="telephone=\"".$telephone."\",";
$update_query.="mobile=\"".$mobile."\",";
$update_query.="email=\"".$email."\"";
$update_query.=" where studentid=".$sid;

$update_query2="update class set";
$update_query2.=" level=\"".$level."\",";
20

$update_query2.=" stream=\"".$stream."\",";
$update_query2.=" semester=\"".$semester."\"";
$update_query2.=" where studentid=".$sid;

$update_query3="update guardian set";
$update_query3.=" name=\"".$gname."\",";
$update_query3.=" email=\"".$gemail."\",";
$update_query3.=" mobile=\"".$gmobile."\",";
$update_query3.=" address=\"".$gaddress."\",";
$update_query3.=" relation=\"".$grelation."\"";
$update_query3.=" where studentid=".$sid;

//echo $updatequery2;echo $updatequery3;
mysql_query($update_query,$conn);
mysql_query($update_query2,$conn);
mysql_query($update_query3,$conn);
$hasError=false;
$errorText="";
$hasInfo=true;
$infoText="Information of the student with name: ".$firstname." ".$lastname." has
been updated.";
}
//header("Location:administration.php");
} //end of both save and delete
else{
$sid=$_GET["s_ID"];
$student=mysql_query("select * from student where studentid=\"".$sid."\"",$conn);
if (mysql_num_rows($student)>1){
$hasError=true;
$errorText="Duplicate name found.";
}
else if(mysql_num_rows($student)==1){
$hasError=false;
$errorText="";
$student_array=mysql_fetch_array($student);
$sid=$student_array["studentid"];
$class=mysql_query("select * from class where studentid =\"".$sid."\"",$conn);
$guardian=mysql_query("select * from guardian where studentid =\"".$sid."\"",$conn);
//$student_details=mysql_fetch_array($student);
$class_array=mysql_fetch_array($class);
$guardian_array=mysql_fetch_array($guardian);
//passing the array value to php variables
//student information
$firstname=$student_array["firstname"];
21

$lastname=$student_array["lastname"];
$dob=$student_array["dob"];
$gender=$student_array["gender"];
$fathername=$student_array["fathername"];
$address=$student_array["address"];
$nationality=$student_array["nationality"];
$telephone=$student_array["telephone"];
$mobile=$student_array["mobile"];
$email=$student_array["email"];
//guardian information
$gname=$guardian_array["name"];
$gemail=$guardian_array["email"];
$gmobile=$guardian_array["mobile"];
$gaddress=$guardian_array["address"];
$grelation=$guardian_array["relation"];
//class information
$level=$class_array["level"];
$stream=$class_array["stream"];
$semester=$class_array["semester"];
}
else{
$hasError=true;
$hasInfor=false;
$errorText="Student not Found";
$infoText=""; }
}
//calculating total number of student in each level distinctly
global $total_student;
global $total_plustwo,$total_bachelor;
global $total_science,$total_management;
global $total_bba,$total_bbs,$total_bim,$total_bsc;
$sql="select * from student";
$res=mysql_query($sql,$conn);
$total_student=mysql_num_rows($res);
$sql="select * from class where level=\"Plus_two\"";
$res=mysql_query($sql,$conn);
$total_plustwo=mysql_num_rows($res);
$sql="select * from class where level=\"Bachelor\"";
$res=mysql_query($sql,$conn);
$total_bachelor=mysql_num_rows($res);
$sql="select * from class where stream=\"BSc.CSIT\"";
$res=mysql_query($sql,$conn);
$total_bsc=mysql_num_rows($res);
$sql="select * from class where stream=\"BBA\"";
22

$res=mysql_query($sql,$conn);
$total_bba=mysql_num_rows($res);
$sql="select * from class where stream=\"BBS\"";
$res=mysql_query($sql,$conn);
$total_bbs=mysql_num_rows($res);
$sql="select * from class where stream=\"BIM\"";
$res=mysql_query($sql,$conn);
$total_bim=mysql_num_rows($res);
$sql="select * from class where stream=\"Science\"";
$res=mysql_query($sql,$conn);
$total_science=mysql_num_rows($res);
$sql="select * from class where stream=\"Management\"";
$res=mysql_query($sql,$conn);
$total_management=mysql_num_rows($res);

?>

23


4.2. Snapshots / Output
Homepage

Login page

Administration page with student details



24

Error shown when null values are entered in homepage form



Error shown when student is not found in administration.php file




Information shown when save process is completed






Information shown when a student information is deleted from the system



25

5. References
While programming the project some references were taken reguarding php, css and
javascript codes which were taken from the following websites.

http://www.php.net
http://www.w3schools.com
http://www.echoecho.com/htmlforms10.htm
http://www.javascriptkit.com/jsref/select.shtml
http://www.daniweb.com/web-development/php/threads/193999/convert-string-to-
date