Vous êtes sur la page 1sur 105

1.

INTRODUCTION
1.1 About the project

E-learning is another form of distance learning where education and training courses are
delivered using computer technology. Typically, this means that courses are delivered
either via the Internet, or on computer networks (linked computers). With the increased
availability of PCs and Internet access, e-learning is becoming more and more popular.
E-Learning is a web application uses JSP. The database is Microsoft Access 2007. This online
application enables the end users to register online, select the subject, read the tutorial
and appear for the exam online. The results of the exams are also declared just after taking
the test. The minimum pass percentage is 50%. A person is given three attempts to pass a
paper. In subjects containing more than one exam, the candidate should take tests in a
particular sequence and also he can attempt the next test only if he has completed the
previous papers. The correct answers for the questions are displayed after the exam. The
date of the registration, date of exam, number of attempts, test results etc. are stored in
the database.

1.2 Purpose of the project

Education through the internet, network and a computer is e-Learning. This helps in
network enabled transfer of skills and knowledge. e-Learning refers to use of electronic
applications and processes to learn. This is a web based application which can be hosted in
the website of any training institute. The students will be able to register online, read the
course material and write online exam. Certificates also will be issued online.

The objectives of this project are


• to provide distance learning
• to make it convenient for people who have other commitments
• cost reduction
• reduced paper work
• computer evaluated tests

1.3 Understanding of existing system

Show educators and trainers how to adapt teaching methods and materials to make use of
the Internet. Including a framework showing how to apply Internet technology
progressively as skills and confidence grow, the project demonstrates the route from
adapting materials to developing a virtual course.

Nowadays, when people are not having time to visit an institute. Therefore, the software is
designed to provide the education through Internet. The project “e-Learning” helps the
common world in any field they are to get the knowledge what they want even sitting at
their places. This helps them to spare time in their busy schedule and save their time
during transportation.

1.4 Tools/Environment Used

HARDWARE REQUIREMENTS

Processor: Pentium III/IV (Preferably P-IV)


RAM: 256 MB

SOFTWARE REQUIREMENTS
Web Server: Apache Tomcat Server
0perating System: Windows ME/2000/XP/UNIX
Language: JSP (JAVA Server Pages), HTML
Database: MS Access 2007

2. SOFTWARE DESCRIPTION
2.1 Apache Tomcat Server

Apache Tomcat (or Jakarta Tomcat or simply Tomcat) is an open source servlet container
developed by the Apache Software Foundation (ASF). Tomcat implements the Java Servlet
and the JavaServer Pages (JSP) specifications from Sun Microsystems, and provides a "pure
Java" HTTP web server environment for Java code to run.

Tomcat should not be confused with the Apache web server, which is a C implementation
of an HTTP web server; these two web servers are not bundled together. Apache Tomcat
includes tools for configuration and management, but can also be configured by editing
XML configuration files.

Tomcat Server has 3 main parts.

1. Catalina
2. Coyote
3. Jasper

Catalina is the Tomcat Servlet container.It implements the Sun Microsystem’s


specifications for the Java Server Pages and servlets.

Coyote is the HTTP connector of the Tomcat server.Which gets the request from TCP
specified port and forward them to Tomcat server to process and also gets the response
from server and send them to client,this is Coyote’s basic job in Tomcat Server.

Jasper is a Java Server Page engine of the Tomcat Server.Actually it is now called Jasper 2
because there is a new specification on Java Server Pages side by Sun.Jasper parses JSP files
and send them to Catalina to compile them as servlets and jasper can detect pages if it is
JSP page or not.

2.2 Operating System – Windows XP


Windows XP is a computer operating system which was released by Microsoft in 2001. Since that
time Windows XP became the predominant operating system run on Windows based PCs, and
remains an extremely popular platform despite the release of its supposed successor to Windows
Vista. Windows XP has several notable advantages over other operating systems.

2.2.1 Universality
Windows operating systems are used on PCs all around the world, and Windows XP is the
most common platform. By being familiar with Windows XP, a user will be equipped to use
computers while traveling, and potentially be able to receive help with a Windows XP
based portable device. The Windows XP platform is also extremely popular in business, and
strong PC skills are becoming an increasingly important part of productivity.

2.2.2 Support
One of the best parts of Windows XP is that due to its widespread use and popularity, there
is a wealth of support information available. Not only does Microsoft itself host detailed
support information, but many other websites are full of message boards frequented by
tech gurus who are experts with Windows XP and are often willing to help novices
troubleshoot any problem they might have.

2.2.3 Software
Another important advantage of Windows XP is the huge amount of useful software
available on the platform. Microsoft Office products are particularly useful, as they are
used extensively in academics and business. Windows XP is also very strong when it comes
to running game software. Almost all computer games are designed to work with Windows
XP, while many will not run on Macintosh or other platforms. The number of shareware
and freeware programs available for XP is huge compared to non-Windows operating
systems.

2.2.4 Memory Use


One of the main gripes of PC users with Windows Vista is that Vista tends to favor
flashiness over function. Vista has a slick-looking user interface and graphical effects that
make the operating system look cool, but ultimately slow down performance. The random
access memory use of Windows XP while idling can be less than half that of Windows Vista,
and for many programs recommends that Vista users have more RAM installed due to this
memory hungry interface. For this reason, many Vista users actually "downgrade" to
Windows XP.
2.2.5 Driver Availability
An important advantage that Windows XP has over many other operating systems is the
widespread availability of hardware driver support. Hardware devices, such as video cards
and sound cards, need software called "drivers" to tell the operating system how to use
them. Since Windows XP is so widespread, drivers for Windows XP are readily available for
download online for almost any new hardware device. In addition, driver updates are
released constantly for Windows XP, while updates may not be released as regularly under
other platforms.

2.2.6 WLAN features

The most valuable enhancement in Windows XP is the way that it intuitively handles
802.11b wireless LAN connectivity. In the current market, WLANs involve a patchwork of
vendors, equipment, drivers, software, and security mechanisms. This can often lead to
confusion and difficulty in setting up and administering WLANs, or even worse, to security
lapses that can compromise networks.

However, Windows XP is very WLAN savvy, streamlining WLAN configuration and security
and making it much easier for users to roam between WLANs. Windows XP includes the
Wireless Zero Configuration service, and Microsoft has partnered with 802.11b NIC
vendors so that their NIC drivers are automatically part of this service.

Thus, upon loading XP, the operating system automatically recognizes most wireless NICs.
Then the system automatically goes out and looks for available WLAN networks and lists
the networks it finds. Of course, new wireless configuration tabs in the networking applet
will allow an administrator to set a list of preferred WLANs, and the NIC will automatically
connect to those in the order specified. Obviously, this has excellent implications for
roaming wireless LAN users.

Windows XP also steps up WLAN security by simplifying WEP configuration and integrating
and documenting RADIUS support on WLANs as a way of keeping wireless attackers at bay.

All in all, these features represent an outstanding improvement that could help propel
WLAN implementations. This is the one area where Windows XP Professional provides a
major advantage over Windows 2000 Professional. Nearly everyone using a laptop running
Windows to connect to a WLAN in a corporate environment will want to upgrade their
machine to Windows XP Professional as long as the laptop has enough processing power
and RAM.

2.2.7 System Restore and Device Driver Rollback

The System Restore is another unique Windows XP feature that will benefit Windows 2000
Pro desktops. Windows Me first introduced System Restore, which allows you to take the
OS back to an earlier state. I was a bit skeptical when I first heard of this feature, but when
I actually used it for the first time in Windows Me (after a downloaded piece of rogue
software brought down a machine that I was managing), I was amazed at how well it
worked. In fact, my jaw dropped and I had a look of "you've got to be kidding me" on my
face when I realized how easy it was go back to an earlier version of the system software
that was working smoothly.

Smaller organizations that do not have the resources to thoroughly test new programs on a
test network sandbox before installing them on desktop machines will benefit from
increased productivity that can be gained with this feature. Although the feature is
included in Windows Me, Windows XP Professional is a much more stable OS. If you want
this feature in a business environment, definitely upgrade to Windows XP Pro rather than
to Windows Me.

Similar to System Restore, Device Driver Rollback is a new feature that is unique to
Windows XP and allows you to go back to an earlier version of a device driver if you are
having problems with a newly installed driver (which, unfortunately, is a common
occurrence). This feature is nicely integrated into the Properties sheet of each device and,
like System Restore, provides a quick and easy way to compensate for the kinds of
software conflicts that have caused administrators a lot of headaches in the past.

2.2.8 Remote Desktop and Remote Assistance

Remote Desktop is a highly touted new feature that allows you to connect to your
Windows XP Professional computer from another Windows machine. This can be especially
useful if you want to connect to your office computer from your home computer in order
to access the same applications and systems you access from work. Of course, you would
first have to connect to the corporate LAN using a dial-up or VPN connection.

Essentially, Remote Desktop is a built-in version of remote access software such as


pcAnywhere or LapLink, although it does not contain many of the advanced features of
these programs. Nevertheless, Remote Desktop is fast, efficient, and easy to use. The
technology is based on Windows Terminal Services, and any Windows client running the
Terminal Services client software can access the Windows XP Pro machine once you set it
up to utilize the Remote Desktop feature and set up the appropriate access permissions.

Remote Assistance is a related feature that allows an end user running Windows XP
Professional to get advanced technical support. A user simply goes to Start | Help |
Support | Remote Assistance and can then use e-mail or Windows Messenger to contact a
technician. They can even browse using Windows Messenger to see a list of technicians
who are online. Once connected with a technician, who can now see the user's desktop,
the user can have a chat (or a voice call if both computers have microphones and
speakers), can send a file, or can release control of the computer so that the technician can
work on it remotely.

Many large organizations already have advanced help desk software that can perform
many of these same functions (and more). However, small and medium-size businesses
that do not yet have this kind of functionality or are considering implementing it may find it
much easier and less expensive to simply upgrade their desktop clients to Windows XP
Professional and take advantage of Remote Assistance than it would be to implement an
elaborate piece of help desk software.

2.2.9 Client firewall

Windows XP now comes with its own Internet Connection Firewall built into the
networking functionality of all network interfaces. It is accessed from the Properties applet
of any network interface by simply clicking the Advanced tab, activating the firewall, and
customizing the settings.

Client machine firewalls are definitely the next frontier in securing corporate networks.
These firewalls are especially important for laptop and remote users who connect over the
Internet since attackers can get an easy ride into a corporate network by hijacking one of
these potentially easy targets.

The built-in firewall in Windows XP is easy to configure while providing some advanced
filtering and logging capabilities. It is more than adequate for most organizations, although
it does not contain some of the more robust features of a product such as ZoneAlarm Pro.

While the desktop firewall alone does not provide justification for upgrading to Windows
XP Pro, organizations that are currently considering a desktop firewall rollout may consider
upgrading to Windows XP if they can also directly benefit from some of the other features
listed above.

2.3 Microsoft Access Database


Microsoft Access is a relational database management system from Microsoft that combines the
relational Microsoft Jet Database Engine with a graphical user interface and software development
tools. It is a member of the Microsoft Office suite of applications, included in the Professional and
higher editions or sold separately. The current versions are Microsoft Office Access 2007 for
Windows. In late 2009, Microsoft released the beta version of Microsoft Access 2010.

Microsoft Access is used to create simple database solutions. Access tables support a
variety of standard field types, indices, and referential integrity. Access also includes a
query interface, forms to display and enter data, and reports for printing. The underlying
Jet database, which contains these objects, is multiuser-aware and handles record-locking
and referential integrity including cascading updates and deletes.
Simple tasks can be automated through macros with point-and-click options. Microsoft
Access is very popular among non-programmers who can create visually pleasing and
relatively advanced solutions on their own. It is also easy to place a database on a network
and have multiple users share and update data without overwriting each other’s work.
Data is locked at the record level which is significantly different from Excel which locks the
entire spreadsheet.

2.3.1 Features

Users can create tables, queries, forms and reports, and connect them together with
macros. Advanced users can use VBA to write rich solutions with advanced data
manipulation and user control.

The original concept of Access was for end users to be able to “access” data from any
source. Other uses include: the import and export of data to many formats including Excel,
Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server, Oracle, ODBC, etc. It also has the ability
to link to data in its existing location and use it for viewing, querying, editing, and
reporting. This allows the existing data to change and the Access platform to always use
the latest data. It can perform heterogeneous joins between data sets stored across
different platforms. Access is often used by people downloading data from enterprise level
databases for manipulation, analysis, and reporting locally.

There is also the Jet Database format (MDB or ACCDB in Access 2007) which can contain
the application and data in one file. This makes it very convenient to distribute the entire
application to another user, who can run it in disconnected environments.

One of the benefits of Access from a programmer's perspective is its relative compatibility
with SQL (structured query language) — queries can be viewed graphically or edited as SQL
statements, and SQL statements can be used directly in Macros and VBA Modules to
manipulate Access tables. Users can mix and use both VBA and "Macros" for programming
forms and logic and offers object-oriented possibilities. VBA can also be included in
queries.

Microsoft Access offers parameterized queries. These queries and Access tables can be
referenced from other programs like VB6 and .NET through DAO or ADO. From Microsoft
Access, VBA can reference parameterized stored procedures via ADO.

The desktop editions of Microsoft SQL Server can be used with Access as an alternative to
the Jet Database Engine. This support started with MSDE (Microsoft SQL Server Desktop
Engine), a scaled down version of Microsoft SQL Server 2000, and continues with the SQL
Server Express versions of SQL Server 2005 and 2008.

Microsoft Access is a file server-based database. Unlike client-server relational database


management systems (RDBMS), Microsoft Access does not implement database triggers,
stored procedures, or transaction logging. Access 2010 (not released) does have table level
triggers and stored procedures built into the ACE data engine.

3. SYSTEM DEVELOPMENT LIFE CYCLE


The methodology used for developing this system is PROTOTYPING MODEL. This model is
used here because detailed input, output requirements are not present in the beginning,
and thus it is felt that a prototyping model will be more suitable for development. In this
model, we will create a quick design and then invite user to test the developed system and
refine requirements if any. Thus, the process for development will be iterative.

Often, a customer defines a set of general objectives for software but does not identify
detailed input, processing or output requirements. In other cases, the developer may be
unsure of the efficiency of an algorithm, the adaptability of an operating system, or the
form that human/machine interaction should take.

In these, and many other situations, a prototyping model offers the best approach.

 It generally has the following steps:


 Requirement Gathering
 Quick Design
 Build Prototype
 Customer Evaluation
 Review/Modify Requirements
 Coding
 Testing

4. REQUIREMENT ANALYSIS PHASE


4.1 Feasibility study

This part or aspect of systems analysis that concentrates on finding out whether an
intended course of action violates any constraints is referred to as FEASIBILITY analysis .All
the projects are feasible – given unlimited resources and infinite time! Unfortunately, the
development of a computer –based system or product is more likely beleaguered by
scarcity of evaluate the feasibility of a project at the earliest possible time of project
inception.

4.1.1 Technical Feasibility-:

Technical feasibility centers on the existing computer system (hardware,software,etc.) and


on the extent it can support the proposed addition . Financial considerations have to be
taken into account for technical enhancements. In short the study of function,
performance, and constraints that may affect the ability to achieve an acceptable system. If
the budget is a serious constraint, then the project is judge not feasible .This project is
considered technically feasible for development.

4.1.2 Economical Feasibility-:

Economic analysis is the most frequently used method for evaluation the effectiveness of a
candidate system. More commonly known as cost/benefit analysis, the procedure is to
determine the benefits and savings that are expected from candidate system and compare
them with costs. If benefits outweigh costs then the decision.

4.1.3 Operational Feasibility-:

Operational Feasibility is reviewed in the early stages of project planning. Proposed project
is beneficial only if it can be turned into information systems that will meet the
organization’s operational requirement. In the operational feasibility it is checked if the
system will work, when it is developed and deployed which are major barriers to the
development a consideration about the working of the system after installation in the
organization.

The software, which is developed, has an interactive, user-friendly interface, so operational


difficulties are almost eliminated. It will improve the performance after implementation as
the information can be delivered to the destination with utmost security. Hence the project
is considered operationally feasible.

5. ER-DIAGRAM

5.1 ER-Diagram

5.2 Class Diagram


5.3 Table Structure
tblResults

Field Name Data Type


course_id Number
trainee_id Text
Marks Number
qn1 Number
qn2 Number
qn2 Number
ans1 Number
ans2 Number
ans3 Number
paper_id Number
Attempt_id Number
Result Number

tblCategory

Field Name Data Type


Course_category_id Number
Course_category Text

tblCourses

Field Name Data Type


Course_id Number
Course_category_id Number
Course_name Text
Course_description Text
No_of_papers Number
tblPapers

Field Name Data Type


Paper_id Numbe
Paper_no Number
Paper_name Text
Course_id Number
Paper_description Text

tblDocuments

Field Name Data Type


Document_id Number
Paper_id Number
Paper_no Number
Document_name Text
Document_filename Text
Document_description Text

tblQuestions

Field Name Data Type


Paper_id Number
Question_id Number
Question Text
Choice1 Text
Choice2 Text
Choice3 Text
Choice4 Text
Ans Number
tblElearning_users

Field Name Data Type


User_name Text
Pass_word Text
First_name Text
Designation Text
Email Text
City Text
Country Text

tblTrainee_history

Field Name Data Type


Trainee_id Number
Is_regiteres Number
Is_attended_exam Number
Is_successfully_completed Number
Course_completed_date Date
Total_marks Number
Doe Date
User_name Text
Course_id Number
Paper1_no_of_attempts Number
Paper2_no_of_attempts Number
Paper3_no_of_attempts Number
Paper1_marks Number
Paper2_marks Number
Paper3_marks Number
Paper1_completed_date Date
Paper2_completed_date Date
Paper3_completed_date Date
Paper_id1 Number
Paper_id2 Number
Paper_id3 Number
Is_paper1_completed Number
Is_paper2_completed Number
Is_paper3_completed Number
Paper1_appeared_on Date
Paper2_appeared_on Date
Paper3_appeared_on Date
Is_paper1_tutorial_viewed Number
Is_paper2_tutorial_viewed Number
Is_paper3_tutorial_viewed Number
No_of_papers Number

6. CODING
dbConnectiion.jsp
/********************/
<%
Connection conn=null;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn = DriverManager.getConnection("jdbc:odbc:elearn", "", "");
}
catch (Exception exc)
{
out.println(exc.toString() + ""); }

/** out.println ("Database Connected.");


conn.close ();
out.println ("Database closed."); **/
%>

Header.jsp
/*************/
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>e-Learning :: The world's largest e-learning site</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js_functions.js"></script>
</head>
<body>
Topmenu.jsp<div id="menu">
<ul>
<li><a href="index.jsp" class="menu">Home</a></li>
<li class="menusap"></li>
<li><a href="aboutus.jsp" class="menu">About Us</a></li>
<li class="menusap"></li>
<li><a href="tutorials.jsp" class="menu">Tutorials</a></li>
<li class="menusap"></li>
<li><a href="quizzes.jsp" class="menu">Quizzes</a></li>
<li class="menusap"></li>
<li><a href="downloads.jsp" class="menu">Downloads</a></li>
<li class="menusap"></li>
<li><a href="usefull_links.jsp" class="menu">Usefull
Link</a></li>
<li class="menusap"></li>
<li><a href="testimonials.jsp"
class="menu">Testimonials</a></li>
<li class="menusap"></li>
<li><a href="contactus.jsp" class="menu">Contact Us</a></li>
</ul>
</div>
<div id="contentleft">
<div id="topbuttonsblank">
<div id="register"><a href="signup.jsp"
class="register">Registration</a></div>
<div id="bookmark"><a
href="javascript:bookmark('http://localhost:8080/e-Learning',
'e-Learning');" class="bookmark">Bookmark</a></div>
</div>

Footer.jsp
/***************/
<div id="footerbg">
<div id="footerlinks">
<a href="index.jsp" class="footerlinks">Home</a> |
<a href="aboutus.jsp" class="footerlinks">About Us</a> |
<a href="tutorials.jsp" class="footerlinks">Tutorials</a> |
<a href="quizzes.jsp" class="footerlinks">Quizzes</a> |
<a href="downloads.jsp" class="footerlinks">Downloads</a> |
<a href="usefull_links.jsp" class="footerlinks">Usefull
Link</a> |
<a href="testimonials.jsp"
class="footerlinks">Testimonials</a> |
<a href="contactus.jsp" class="footerlinks">Contact Us</a>
</div>
<div id="copyrights">&copy eLearning - 2011. All Rights
Reserved.</div>
<div id="designedby">Designed by Lopzang Dorji</div>
</div>
</div>
</body>
</html>

Index.jsp
/***********/
<%@ page language = "java" %>
<%@ page import = "java.util.*" %>
<%@ page contentType = "TEXT/HTML" %>
<jsp:include page="header.jsp"/>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank">
<jsp:include page="topmenu.jsp"/>
<div id="callus">

</div>
<div id="leftheading">
<h2>Why e-Learning?</h2>
</div>
<div id="lefttxtblank">
<div id="leftredtxt">Advantages ....</div>
<div id="lefttxt"><p align="justify"><span
class="leftboldtxt">E-learning</span> is a way of educating people
electronically. The essential elements of learning remain the same no
matter what the method of education. Elearning, just like it’s traditional
classroom counterpart, is a means of guiding a student from the basics
through to more advanced concepts in a particular subject. It is a step-
by-step guide through a course, if you will. In a traditional setting, it
is up to the teacher to lead students through the material. Unfortunately,
having a class being led through, the course can only go as fast as its
slowest member. While e-learning is also a guided tour through a subject,
it is primarily student-driven, rather than instructor led. The advantage
of that is the course will go at each individual student’s pace, thereby
facilitating more actual learning.</p>
</div>
<div id="buttonbg"><a href="#" class="more">readmore</a></div>
</div>
</div>
<jsp:include page="content_right.jsp"/>
<div id="testimonialbg">
<div id="testimonialtxtblank">
<div id="testimonialheading">Testimonials</div>
<div id="testimonialdate">03</div>
<div id="testimonialtxt">This eLearning website is very usefull
and informative. It helped me a lot and even we get each and every step
how to proced with it...
So i would like recommend you all to visit this site and start learning
.</div>
<div id="testimonialname">....T. Pheriry</div>
<div id="testimonialbutton"><a href="#"
class="testimonialbutton">Details</a></div>
</div>
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>
Js_function.js
/***************/
/* Signup validation */
function fnValidateSignup()
{
if(document.signup.trainee_name.value==""){
alert("Enter your name.");
document.signup.trainee_name.focus();
return false;
}
if(document.signup.email.value==""){
alert("Enter your Email Id.");
document.signup.email.focus();
return false;
}
if(document.signup.user_name.value==""){
alert("Enter username.");
document.signup.user_name.focus();
return false;
}
if(document.signup.pass_word.value==""){
alert("Enter Password");
document.signup.pass_word.focus();
return false;
}
if(document.signup.retype_pass.value==""){
alert("Retype Password");
document.signup.retype_pass.focus();
return false;
}
if(document.signup.pass_word.value!=document.signup.retype_pass.valu
e){
alert("Password did not match");
return false;
}
}

/* Login Validation */
function fnValidateLogin()
{
if(document.login.user_name.value==""){
alert("Enter your user name.");
return false;
}
if(document.login.pass_word.value==""){
alert("Enter your Password.");
return false;
}
}

/* Page BookMark option */


function bookmark(url, sitename)
{
ns="Netscape and FireFox users, use CTRL+D to bookmark this site."
if ((navigator.appName=='Microsoft Internet Explorer') &&
(parseInt(navigator.appVersion)>=4))
{
window.external.AddFavorite(url, sitename);
}
else if (navigator.appName=='Netscape')
{
alert(ns);
}
}

Style.css
/************/
@charset "utf-8";
/* CSS Document */
body{
margin:0px;
padding:0px;
background-image:url(images/bg.jpg);
background-repeat:repeat-x;
background-color:#bbcd72;
}
h1,h2,h3,h4,h5,h6,span{
margin:0px;
padding:0px;
}
#main{
width:904px;
float:none;
margin:0 auto;
padding:0px;}
#contentbg{
width:904px;
float: left;
margin:0px;
padding:0px;
background-image:url(images/contenttxtbg.jpg);
background-repeat: repeat-y;
}
#contenttxtblank{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_1{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_login.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_2{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_aboutus.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_3{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_tutr.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_4{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_quiz.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_5{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_dl.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_6{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_lk.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_7{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_tm.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_8{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/contentbg_ca.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_9{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/html.jpg);
background-repeat:no-repeat;
}
#contenttxtblank_10{
width:866px;
float: left;
margin:0px;
padding:0 0 40px 38px;
background-image:url(images/usrf_bg.jpg);
background-repeat:no-repeat;
}
#menu{
width:828px;
height:30px;
float: left;
margin:0px;
padding:0px;
}
#menu ul{
width:778px;
height:30px;
float: left;
margin:0px;
padding:0 0 0 50px;
display:block;
}
#menu ul li{
height:30px;
float: left;
margin:0px;
padding:0px;
display:block;
}
#menu ul li.menusap{
width:2px;
height:27px;
float: left;
margin:0px;
padding:0px;
background-image:url(images/menusap.jpg);
background-repeat:no-repeat;
}
#menu ul li.menusap1{
width:2px;
height:27px;
float: left;
margin:0px;
padding:0px;
background-image:url(images/usr_sep.jpg);
background-repeat:no-repeat;
}
#menu ul li a.menu{
height:22px;
float: left;
margin:0px;
padding:5px 11px 0 11px;
font-family: "Trebuchet MS";
font-size:11px;
font-weight:bold;
color:#c5c5c5;
text-align:center;
text-decoration:none;
text-transform:uppercase;
}
#menu ul li a.menu1{
height:22px;
float: left;
margin:0px;
padding:5px 11px 0 11px;
font-family: "Trebuchet MS";
font-size:11px;
font-weight:bold;
color:#ffffff;
text-align:center;
text-decoration:none;
text-transform:uppercase;
}
#menu ul li a.menu:hover{
height:22px;
float: left;
margin:0px;
padding:5px 11px 0 11px;
font-family: "Trebuchet MS";
font-size:11px;
font-weight:bold;
color:#99eaf5;
text-align:center;
text-decoration:none;
text-transform:uppercase;
background-image:url(images/menuover.jpg);
background-repeat:no-repeat;
background-position:center bottom;
}
#menu ul li a.menu1:hover{
height:22px;
float: left;
margin:0px;
padding:5px 11px 0 11px;
font-family: "Trebuchet MS";
font-size:11px;
font-weight:bold;
color:#99eaf5;
text-align:center;
text-decoration:none;
text-transform:uppercase;
background-image:url(images/usr_arrow.jpg);
background-repeat:no-repeat;
background-position:center bottom;
}

#contentleft{
width:597px;
float:left;
margin:0px;
padding:0px;
}
#topbuttonsblank{
width:597px;
height:29px;
float:left;
margin:7px 0 0 0;
padding:0px;
}
#register{
width:130px;
height:29px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#464646;
text-align:center;
text-decoration:none;
text-transform:uppercase;
}
.register{
width:117px;
height:23px;
float:left;
margin:0px;
padding:6px 0 0 13px;
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#464646;
text-decoration:none;
text-transform:uppercase;
background-image:url(images/register.jpg);
background-repeat:no-repeat;
}
.register:hover{
width:117px;
height:23px;
float:left;
margin:0px;
padding:6px 0 0 13px;
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#464646;
text-align:center;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/registerover.jpg);
background-repeat:no-repeat;
}
#bookmark{
width:130px;
height:29px;
float:left;
margin:0 0 0 4px;
padding:0px;
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#464646;
text-align:center;
text-decoration:none;
text-transform:uppercase;
}
.bookmark
{
width:117px;
height:23px;
float:left;
margin:0px;
padding:6px 0 0 13px;
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#464646;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/bookmark.jpg);
background-repeat:no-repeat;
}
.bookmark:hover
{
width:117px;
height:23px;
float:left;
margin:0px;
padding:6px 0 0 13px;
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#464646;
text-align:center;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/bookmarkover.jpg);
background-repeat :no-repeat;
}
#callus
{
width:264px;
height:25px;
float:left;
margin:229px 0 0 0;
padding:20px 0 0 0;
font-family:Arial;
font-size:20px;
color:#393939;
background-image:url(images/callus.jpg);
background-repeat:no-repeat;
}
#callus1
{
width:264px;
height:25px;
float:left;
margin:60px 0 0 0;
padding:20px 0 0 0;
font-family:Arial;
font-size:20px;
color:#393939;
background-image:url(images/callus.jpg);
background-repeat:no-repeat;
}
#callus h3
{
width:264px;
height:25px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:20px;
color:#393939;
}
.callus
{
font-family:Arial;
font-size:24px;
color:#c6891e;
padding:0 0 0 34px;
}
#leftheading_usr
{
width:890px;
height:35px;
float:left;
margin:1px 0 0 0;
padding:6px 0 0 58px;
background-image: url(images/usr_head.jpg);
background-repeat:no-repeat;
}
#leftheading_usr span
{
font-family:Arial, Helvetica, sans-serif;
font-size:17px;
font-weight:bold;
}
#leftheading_usr a
{
color:#0000FF;
font-size:13px;
text-decoration:none;
}
#leftheading_usr a:hover
{
color:#3399FF;
font-size:13px;
text-decoration:underline;
}
#leftheading
{
width:471px;
height:35px;
float:left;
margin:20px 0 0 0;
padding:4px 0 0 58px;
font-family:Arial;
font-size:30px;
color:#13819a;
background-image: url(images/leftheading.jpg);
background-repeat:no-repeat;
}
#leftheading h2
{
width:471px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:22px;
font-weight:normal;
color:#13819a;
}
#lefttxtblank
{
width:509px;
float:left;
margin:0px;
padding:5px 0 0 20px;
}
#lefttxtblank1
{
width:830px;
float:left;
margin:0px;
padding:5px 0 0 20px;
}
#leftredtxt
{
width:509px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:18px;
color:#cf7d09;
}
#lefttxt
{
width:509px;
float:left;
margin:0px;
padding:31px 0 0 0;
font-family:Arial;
font-size:12px;
color:#4a513d;
line-height:20px;
}
.leftboldtxt
{
font-family:Arial;
font-size:12px;
font-weight:bold;
color:#4a513d;
}
.lefttxt
{
font-family:Arial;
font-size:12px;
color:#4a513d;
background-color:#cee181;
}
.lefttxt02
{
font-family:Arial;
font-size:12px;
color:#4a513d;
background-color:#cee181;
padding:0 27px 0 3px;
}
#buttonbg
{
width:501px;
height:25px;
float:left;
margin:10px 0 0 0;
padding:0px;
background-image:url(images/hline.jpg);
background-repeat:repeat-x;
background-position:center;
}
.more
{
width:82px;
height:20px;
float: right;
margin:0px;
padding:5px 0 0 0;
font-family:"Trebuchet MS";
font-size:10px;
font-weight:bold;
color:#414141;
text-align:center;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/morebutton.jpg);
background-repeat: no-repeat;
}
.more:hover
{
width:82px;
height:20px;
float: right;
margin:0px;
padding:5px 0 0 0;
font-family:"Trebuchet MS";
font-size:10px;
font-weight:bold;
color:#414141;
text-align:center;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/morebutton.jpg);
background-repeat: no-repeat;
}

#contentright
{
width:229px;
float:left;
margin:0px;
padding:95px 0 0 0;
}
#contentright1
{
width:229px;
float:left;
margin:0px;
padding:5px 0 0 0;
}
#search
{
width:229px;
height:78px;
float:left;
margin:0px;
padding:0px;
background-image:url(images/search.jpg);
background-repeat:no-repeat;
}
#usr_profile
{
width:229px;
height:58px;
float:left;
margin:0px;
padding:0px;
}
#searchblank
{
width:179px;
height:56px;
float:left;
margin:0px;
padding:22px 0 0 50px;
}
#searchinput
{
width:103px;
height:22px;
float:left;
margin:0px;
padding:0px;
}
.searchinput
{
width:97px;
height:18px;
float:left;
margin:0px;
padding:4px 0 0 6px;
font-family: Arial;
font-size:10px;
color:#070808;
}
#searchbutton
{
width:51px;
height:21px;
float:left;
margin:1px 0 0 10px;
padding:0px;
}
.search
{
width:51px;
height:18px;
float:left;
margin:0px;
padding:3px 0 0 0;
font-family: Arial;
font-size:10px;
color:#070808;
text-align:center;
text-decoration:none;
background-image:url(images/searchbutton.jpg);
background-repeat:no-repeat;
}
.search:hover
{
width:51px;
height:18px;
float:left;
margin:0px;
padding:3px 0 0 0;
font-family: Arial;
font-size:10px;
color:#070808;
text-align:center;
text-decoration:none;
background-image:url(images/searchbutton.jpg);
background-repeat:no-repeat;
}
#advancesearch
{
width:103px;
height:22px;
float:left;
margin:0px;
padding:0px;
}
.advancesearch
{
width:97px;
height:18px;
float:left;
margin:0px;
padding:4px 0 0 6px;
font-family: Arial;
font-size:11px;
font-weight:bold;
color:#ce932b;
text-decoration:none;
}
.advancesearch:hover
{
width:97px;
height:18px;
float:left;
margin:0px;
padding:4px 0 0 6px;
font-family: Arial;
font-size:11px;
font-weight:bold;
color:#ce932b;
text-decoration:underline;
}

#rightnav
{
width:230px;
height:54px;
float:left;
margin:11px 0 0 0;
padding:0px;
}
#rightnav ul
{
width:230px;
height:54px;
float:left;
margin:0px;
padding:0px;
display:block;
}
#rightnav ul li
{
width:45px;
height:54px;
float:left;
margin:0 1px 0 0;
padding:0px;
display:block;
}
#rightnav ul li a.login
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image:url(images/login.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.login
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image:url(images/login.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.check
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/check.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.check:hover
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/check.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.chat
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/chat.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.chat:hover
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/chat.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.idea
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/idea.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.idea:hover
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/idea.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.privecy
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/privecy.jpg);
background-repeat:no-repeat;
}
#rightnav ul li a.privecy:hover
{
width:45px;
height:54px;
float:left;
margin:0px;
padding:0px;
background-image: url(images/privecy.jpg);
background-repeat:no-repeat;
}

#morelinksheading
{
width:229px;
height:41px;
float:left;
margin:25px 0 0 0;
padding:0px;
background-image: url(images/morelinksheading.jpg);
background-repeat:no-repeat;
}
#morelinksheading h5
{
width:177px;
height:31px;
float:left;
margin:0px;
padding:10px 0 0 52px;
font-family:Arial;
font-size:18px;
font-weight:normal;
color:2a2a2a;
}
#morelinks
{
width:211px;
float:left;
margin:0px;
padding:23px 0 34px 18px;
background-color:#c7da79;
}
.date
{
width:47px;
height:15px;
float:left;
margin:0px;
padding:2px 0 0 17px;
font-family:Arial;
font-size:11px;
font-weight:bold;
color:#FFF;
background-image:url(images/datebg.jpg);
background-repeat:no-repeat;
}
.linkblank
{
width:200px;
height:12px;
float:left;
margin:8px 0 12px 0;
padding:0 0 0 11px;
font-family:Arial;
font-size:11px;
color:#FFF;
background-image: url(images/arrow.jpg);
background-repeat:no-repeat;
background-position:left 5px;
}
.linkblank02
{
width:200px;
height:12px;
float:left;
margin:11px 0 8px 0;
padding:0 0 0 11px;
font-family:Arial;
font-size:11px;
color:#FFF;
background-image: url(images/arrow.jpg);
background-repeat:no-repeat;
background-position:left 5px;
}
.linkblank03
{
width:200px;
height:12px;
float:left;
margin:0 0 8px 0;
padding:0 0 0 11px;
font-family:Arial;
font-size:11px;
color:#FFF;
background-image: url(images/arrow.jpg);
background-repeat:no-repeat;
background-position:left 5px;
}
.linkblank04
{
width:200px;
height:12px;
float:left;
margin:0 0 14px 0;
padding:0 0 0 11px;
font-family:Arial;
font-size:11px;
color:#FFF;
background-image: url(images/arrow.jpg);
background-repeat:no-repeat;
background-position:left 5px;
}
.link
{
width:200px;
height:12px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:11px;
color:#FFF;
text-decoration: underline;
}
.link:hover
{
width:200px;
height:12px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:11px;
color:#FFF;
text-decoration: none;
}
#morelinksbot
{
width:229px;
height:8px;
float:left;
margin:0px;
padding:0px;
overflow:hidden;
background-image: url(images/morelinksbot.jpg);
background-repeat:no-repeat;
}
#testimonialbg
{
width:825px;
height:202px;
float:left;
margin:36px 0 0 0;
padding:0px;
background-image:url(images/testmonialbg.jpg);
background-repeat:no-repeat;
}
#blank_bg
{
width:825px;
height:50px;
float:left;
margin:36px 0 0 0;
padding:0px;
background-image:url(images/blank_bg.jpg);
background-repeat:no-repeat;
}
#testimonialtxtblank
{
width:806px;
height:184px;
float:left;
margin:0px;
padding:18px 0 0 19px;
}
#testimonialheading
{
width:742px;
height:40px;
float:left;
margin:0px;
padding:0 0 0 64px;
font-family:Arial;
font-size:30px;
color:#33b0cd;

background-repeat:no-repeat;
}
#testimonialheading h2
{
width:806px;
height:40px;
float:left;
margin:0px;
padding:0px;
font-family:Arial;
font-size:30px;
color:#33b0cd;
}
#testimonialdate
{
width:56px;
height:38px;
float:left;
margin:11px 0 0 0;
padding:26px 0 0 0;
font-family:Arial;
font-size:28px;
font-weight:bold;
color:#829241;
text-align:center;
background-image: url(images/testimonial-date.jpg);
background-repeat:no-repeat;
}
#testimonialtxt
{
width:417px;
float:left;
margin:11px 0 0 0;
padding:0 0 0 17px;
font-family:Arial;
font-size:14px;
font-style:italic;
color:#a9a9a9;
line-height:20px;
}
#testimonialname
{
width:417px;
float:left;
margin:11px 0 0 0;
padding:0 0 0 73px;
font-family:Arial;
font-size:14px;
font-weight:bold;
color:#FFF;
text-align:right;
}
#testimonialbutton
{
width:116px;
height:38px;
float:left;
margin:0 0 0 135px;
padding:0px;
}
.testimonialbutton
{
width:116px;
height:32px;
float:left;
margin:0px;
padding:6px 0 0 0;
font-family:Arial;
font-size:20px;
font-weight:bold;
color:#2e2e2e;
text-align:center;
text-decoration:none;
background-image:url(images/detailsbutton.jpg);
background-repeat:no-repeat;
}
.testimonialbutton:hover
{
width:116px;
height:32px;
float:left;
margin:0px;
padding:6px 0 0 0;
font-family:Arial;
font-size:20px;
font-weight:bold;
color:#2e2e2e;
text-align:center;
text-decoration:none;
background-image: url(images/detailsbuttonover.jpg);
background-repeat:no-repeat;
}
#footerbg
{
width:904px;
height:135px;
float: left;
margin:0px;
padding:0px;
background-image:url(images/footerbg.jpg);
background-repeat:no-repeat;
}
#footerlinks
{
width:904px;
height:13px;
float: left;
margin:19px 0 0 0;
padding:0px;
font-family:"Trebuchet MS";
font-size:10px;
color:#FFF;
text-align:center;
text-decoration:none;
text-transform:uppercase;
}
.footerlinks
{
font-family:"Trebuchet MS";
font-size:10px;
color:#FFF;
text-align:center;
text-decoration:none;
text-transform:uppercase;
padding:0 5px 0 5px;
}
.footerlinks:hover
{
font-family:"Trebuchet MS";
font-size:10px;
color:#FFF;
text-align:center;
text-decoration: underline;
text-transform:uppercase;
padding:0 5px 0 5px;
}
#copyrights
{
width:904px;
height:13px;
float: left;
margin:5px 0 0 0;
padding:0px;
font-family: Arial;
font-size:10px;
color:#2d2d2d;
text-align:center;
}
#validation
{
width:534px;
float: left;
margin:5px 0 0 0;
padding:0 0 0 370px;
}
.xhtml
{
width:70px;
height:20px;
float: left;
margin:0px;
padding:5px 0 0 12px;
font-family:"Trebuchet MS";
font-size:10px;
font-weight:bold;
color:#414141;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/xhtml.jpg);
background-repeat: no-repeat;
}
.xhtml:hover
{
width:70px;
height:20px;
float: left;
margin:0px;
padding:5px 0 0 12px;
font-family:"Trebuchet MS";
font-size:10px;
font-weight:bold;
color:#414141;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/xhtml.jpg);
background-repeat: no-repeat;
}
.css
{
width:62px;
height:20px;
float: left;
margin:0 0 0 3px;
padding:5px 0 0 20px;
font-family:"Trebuchet MS";
font-size:10px;
font-weight:bold;
color:#414141;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/css.jpg);
background-repeat: no-repeat;
}
.css:hover
{
width:62px;
height:20px;
float: left;
margin:0 0 0 3px;
padding:5px 0 0 20px;
font-family:"Trebuchet MS";
font-size:10px;
font-weight:bold;
color:#414141;
text-decoration:none;
text-transform:uppercase;
background-image: url(images/css.jpg);
background-repeat: no-repeat;
}
#designedby{
width:904px;
height:13px;
float: left;
margin:5px 0 0 0;
padding:0px;
font-family: Arial;
font-size:12px;
font-weight:bold;
color:#9b5b01;
text-align:center;
}
.designedby{
font-family: Arial;
font-size:12px;
font-weight:bold;
color:#faf56d;
text-align:center;
text-decoration:none;
}
.designedby:hover{
font-family: Arial;
font-size:12px;
font-weight:bold;
color:#faf56d;
text-align:center;
text-decoration:none;
}
#tuts_list{
font-family:Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
font-size:12px;
}
#tuts_list a{
color:#0000CC;
text-decoration:none;
}
#tuts_list a:hover{
text-decoration:underline;
}
.infoLabel{
font-family:Verdana, Arial, Helvetica, Sans-serif;
font-size:12px;
font-weight:bold;
}
.infoLabel_1{
font-family:Arial, Helvetica, Sans-serif;
font-weight:bold;
font-size:15px;
color:#000099;
}
#successMsg{
font-family:Verdana,Arial,Helvetica;
font-weight:bold;
font-size:12px;
color:#CC3300 ;
padding-bottom: 5px;
padding-left: 5px;
}

Content_right.jsp
/********************/
<div id="contentright">
<div id="search">
<div id="searchblank">
<div id="searchinput">
<label>
<input name="textfield" type="text" class="searchinput"
id="textfield" value="Enter Keyword" />
</label>
</div>
<div id="searchbutton"><a href="#"
class="search">Search</a></div>
<div id="advancesearch"><a href="#"
class="advancesearch">Advance Search</a></div>
</div>
</div>
<div id="rightnav">
<ul>
<li><a href="login.jsp" class="login"></a></li>
<li><a href="#" class="check"></a></li>
<li><a href="#" class="chat"></a></li>
<li><a href="#" class="idea"></a></li>
<li><a href="#" class="privecy"></a></li>
</ul>
</div>
<div id="morelinksheading">
<h5>More Newslinks</h5>
</div>
<div id="morelinks">
<div class="date">12.02.11</div>
<div class="linkblank"><a href="#" class="link">news
headlines.......</a></div>
<div class="date">16.02.11</div>
<div class="linkblank02"><a href="#" class="link">news
headlines.......</a></div>
<div class="linkblank03"><a href="#" class="link">news
headlines.......</a></div>
<div class="linkblank03"><a href="#" class="link">news
headlines.......</a></div>
<div class="linkblank04"><a href="#" class="link">news
headlines.......</a></div>
<div class="date">16.02.11</div>
<div class="linkblank02"><a href="#" class="link">news
headlines.......s</a></div>
<div class="linkblank04"><a href="#" class="link">news
headlines.......</a></div>
<div class="date">16.02.11</div>
<div class="linkblank02"><a href="#" class="link">news
headlines.......</a></div>
</div>
<div id="morelinksbot"></div>
</div>
Signup.jsp
/**************/
<%@ page language="java" %>
<%@ page import="java.util.*" %>
<%@ page contentType="TEXT/HTML" %>
<jsp:include page="header.jsp"/>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_2">
<jsp:include page="topmenu.jsp"/>
<div id="callus">
</div>
<div id="leftheading">
<h2>Sign Up Now</h2>
</div>
<div id="lefttxtblank">
<table width="95%" border="0" align="left"
cellpadding="0" cellspacing="0" bordercolorlight="#FFFFFF">
<tr>
<td id="successMsg">
<%if(request.getParameter("result")!=null)
{
%>
<%=request.getParameter("result")%>
<hr>
<%
}%>
</td>
</tr>
<tr>
<td>
<form name="signup"
action="signup_insert.jsp" method="post">
<table width="100%" border="0"
align="center" cellpadding="3" cellspacing="3">
<tr>
<td colspan="2"
class="infoLabel_1">Enter Your Personal Details</td>
</tr>
<tr>
<td class="infoLabel">Your
Name<font color="#FF0000">*</font>:</td>
<td><input type="text"
name="trainee_name"></td>
</tr>
<tr>
<td class="infoLabel">Email
ID<font color="#FF0000">*</font>:</td>
<td><input type="text"
name="email"></td>
</tr>
<tr>
<td class="infoLabel">
City:</td>
<td><input type="text"
name="city"></td>
</tr>
<tr>
<td class="infoLabel">
Country:</td>
<td><input type="text"
name="country"></td>
</tr>
<tr>
<td
class="infoLabel">Designation:</td>
<td><input type="text"
name="designation"></td>
</tr>
<tr>
<td
class="infoLabel">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td colspan="2"
class="infoLabel_1">Enter Your Login Details</td>
</tr>
<tr>
<td class="infoLabel">User
Name<font color="#FF0000">*</font>:</td>
<td><input type="text"
name="user_name" ></td>
</tr>
<tr>
<td
class="infoLabel">Password<font color="#FF0000">*</font>:</td>
<td><input type="password"
name="pass_word"></td>
</tr>
<tr>
<td class="infoLabel">Retype
Password<font color="#FF0000">*</font>:</td>
<td><input type="password"
name="retype_pass"></td>
</tr>
<tr>
<td
class="infoLabel">&nbsp;</td>
<td><input type="submit"
name="submit" value="Submit" onClick="return fnValidateSignup()" ></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</div>
</div>
<jsp:include page="content_right.jsp"/>
<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>
Signup_insert.jsp
/********************/
<%@ page language="java" %>
<%@ page import ="java.sql.*" %>
<%@ page import="java.io.*"%>
<%@ include file="dbConnection.jsp" %>
<%
String user_name=request.getParameter("user_name");
String pass_word=request.getParameter("pass_word");
String first_name=request.getParameter("trainee_name");
String designation=request.getParameter("designation");
String email=request.getParameter("email");
String city=request.getParameter("city");
String country=request.getParameter("country");
try
{
Statement stat = conn.createStatement();
String qry="select * from tblelearning_users where user_name='" +
user_name + "'";
ResultSet objRs=stat.executeQuery(qry);
if(objRs.next())
{
response.sendRedirect("signup.jsp?result=User name already
taken, please enter different name");
}
else
{
Statement st = conn.createStatement();
String q="Insert into
tblelearning_users(user_name,pass_word,first_name,designation,email,city,c
ountry)values('"+user_name+"','"+pass_word+"','"+first_name+"','"+designat
ion+"','"+email+"','"+city+"','"+country+"')";
st.executeUpdate(q);
response.sendRedirect("signup.jsp?result=Succesfully
regsitered. Please, Login to access other features.");
}
}
catch(Exception e)
{
out.print("error occured " + e);
}
%>

Login.jsp
/*************/
<%@ page language = "java" %>
<%@ page import = "java.util.*" %>
<%@ page contentType = "TEXT/HTML" %>
<jsp:include page="header.jsp" />
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_1">
<jsp:include page="topmenu.jsp"/>
<div id="callus">
</div>
<div id="leftheading">
<h2>Login Now</h2>
</div>
<div id="lefttxtblank">
<table width="95%" border="0" align="left" cellpadding="0"
cellspacing="0" bordercolorlight="#FFFFFF">
<tr> <td colspan="2">&nbsp;
<%
if(request.getParameter("result")!=null)
{
%>
<strong><font color="red" size="2" face="Arial">
<%=request.getParameter("result")%>
</font></strong>
<%
}
%>
</td> </tr>
<tr>
<td>
<form name="login"
action="usrloginverification.jsp" method="post">
<table width="100%" border="0" align="center"
cellpadding="3" cellspacing="3">
<tr>
<td colspan="2"
class="infoLabel_1">Enter Your User Name & Password</td>
</tr>
<tr>
<td class="infoLabel">User Name<font
color="#FF0000">*</font>:</td>
<td><input type="text"
name="user_name" ></td>
</tr>
<tr>
<td class="infoLabel">Password<font
color="#FF0000">*</font>:</td>
<td><input type="password"
name="pass_word"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name=submit
value=Login onClick="return fnValidateLogin()"></td>
</tr>
<tr>
<Td colspan=2>&nbsp;</Td>
</tr>
<tr>
<td>&nbsp;</td>
<Td colspan=2><div align="left"><font
size="2" face="Arial, Helvetica, sans-serif">
<a href="#"><font
color="#FF0000">Forgot Password?</font></a></font><font
size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font>
<font size="2" face="Arial, Helvetica,
sans-serif"><a href="signup.jsp">
<font color="#FF0000">New User: Sign
up</font></a></font>
<font
size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font></div></Td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</div>
</div>
<jsp:include page="content_right.jsp"/>
<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

usrLoginVerification.jsp
/**************************/
<%@ page language = "java" %>
<%@ page import = "java.util.*" %>
<%@ page contentType = "TEXT/HTML" %>
<jsp:include page="header.jsp" />
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_1">
<jsp:include page="topmenu.jsp"/>
<div id="callus">
</div>
<div id="leftheading">
<h2>Login Now</h2>
</div>
<div id="lefttxtblank">
<table width="95%" border="0" align="left" cellpadding="0"
cellspacing="0" bordercolorlight="#FFFFFF">
<tr> <td colspan="2">&nbsp;
<%
if(request.getParameter("result")!=null)
{
%>
<strong><font color="red" size="2" face="Arial">
<%=request.getParameter("result")%>
</font></strong>
<%
}
%>
</td> </tr>
<tr>
<td>
<form name="login"
action="usrloginverification.jsp" method="post">
<table width="100%" border="0" align="center"
cellpadding="3" cellspacing="3">
<tr>
<td colspan="2"
class="infoLabel_1">Enter Your User Name & Password</td>
</tr>
<tr>
<td class="infoLabel">User Name<font
color="#FF0000">*</font>:</td>
<td><input type="text"
name="user_name" ></td>
</tr>
<tr>
<td class="infoLabel">Password<font
color="#FF0000">*</font>:</td>
<td><input type="password"
name="pass_word"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name=submit
value=Login onClick="return fnValidateLogin()"></td>
</tr>
<tr>
<Td colspan=2>&nbsp;</Td>
</tr>
<tr>
<td>&nbsp;</td>
<Td colspan=2><div align="left"><font
size="2" face="Arial, Helvetica, sans-serif">
<a href="#"><font
color="#FF0000">Forgot Password?</font></a></font><font
size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font>
<font size="2" face="Arial, Helvetica,
sans-serif"><a href="signup.jsp">
<font color="#FF0000">New User: Sign
up</font></a></font>
<font
size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font></div></Td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</div>
</div>
<jsp:include page="content_right.jsp"/>
<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

user_home_page.jsp
/***********************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<table width="95%" border="0" align="left"
cellpadding="0" cellspacing="0" bordercolorlight="#FFFFFF">
<tr>
<td>
<form name="signup"
action="signup_insert.jsp" method="post">
<table width="100%" border="0"
align="center" cellpadding="3" cellspacing="3">
<tr>
<td class="infoLabel_1">
<table width="100%" border="1"
style="border-collapse:collapse" cellpadding="3" cellspacing="3"
bordercolorlight="#FFFFFF">
<tr bgcolor="#FF9900">
<td height="25"> <div
align="center"><font color="#FFFFFF" face="Arial, Helvetica, sans-
serif"><strong><font size="2">C.

Code</font></strong></font></div></td>
<td height="25"> <div
align="center">
<font
color="#FFFFFF"><font face="Arial, Helvetica, sans-serif"><strong><font
size="2" color="#FFFFFF">Course

Name</font></strong></font></font></div></td>
<td height="25"> <div
align="center">
<font
color="#FFFFFF"><font face="Arial, Helvetica, sans-serif"><strong><font
size="2" color="#FFFFFF">Course

Category</font></strong></font></font></div></td>
<td height="25"> <div
align="center">
<font color="#FFFFFF"
size="2" face="Arial, Helvetica, sans-serif"><strong>Your

Status</strong></font></div></td>
<td height="25"> <div
align="center">
<font color="#FFFFFF"
face="Arial, Helvetica, sans-
serif"><strong>&nbsp;</strong></font></div></td>
</tr>
<script>
function fnMenuBg1(elementId)
{

document.getElementById(elementId).style.backgroundColor="#dfdfdf";
}
function fnMenuBg2(elementId)
{

document.getElementById(elementId).style.backgroundColor="";
}
</script>
<%
ResultSet rs=null;
Statement
stt=conn.createStatement();
String qry="SELECT * FROM
tblCourses c,tblCategory cat WHERE
c.Course_category_id=cat.Course_category_ID";
stt=conn.createStatement();
rs=stt.executeQuery(qry);
try{
ResultSet rs1=null;
Statement
sst=conn.createStatement();
while(rs.next()){
int
course_id=rs.getInt("course_id");
int no_of_attempts=0;
int is_successfully_completed=0;
String
date_of_registration_str=null;
String
course_completed_date_str=null;
java.util.Date
date_of_registration=null;
java.util.Date
course_completed_date=null;
int is_registered=0;
String back_color="";
try
{
String qry1="select * from
tblTrainee_history where course_id='" + course_id + "' and user_name='" +
session.getAttribute("user_name") + "'";
sst=conn.createStatement();
rs1=sst.executeQuery(qry1);
if(rs1.next())
{

is_registered=rs1.getInt("is_registered");

date_of_registration=rs1.getDate("doe");

date_of_registration_str=date_of_registration.getDate() + "-" +
(date_of_registration.getMonth()+1) + "-" +
(date_of_registration.getYear()+1900);

is_successfully_completed=rs1.getInt("is_successfully_completed");

course_completed_date=rs1.getDate("course_completed_date");

course_completed_date_str=course_completed_date.getDate() + "-" +
(course_completed_date.getMonth()+1) + "-" +
(course_completed_date.getYear()+1900);
}
}
catch(Exception ex)
{

}
if(is_successfully_completed==1)
{
back_color="bgcolor=#FFFFCC";
}
else
{
if(is_registered==1)
{
back_color="bgcolor=#f0f0ff";
}
else
{
back_color="";
}
}
%>
<tr <%=back_color%>>
<td><%=course_id%></font></td>

<td><%=rs.getString("course_name")%></td>

<td><%=rs.getString("course_category")%></td>
<td> <font color="#666666">
<%
if(is_successfully_completed >
0)
{%>
<font size="2" face="Arial,
Helvetica, sans-serif">Successfully completed
on
<%=course_completed_date_str%></font></font> <font color="#666666">
<%
}
else
{
if(is_registered==1)
{
%>
<font size="2" face="Arial,
Helvetica, sans-serif"> Enrolled on <%=date_of_registration_str%><br>
(not yet
completed)</font></font> <font color="#666666">
<% }
else
{%>
<font size="2" face="Arial,
Helvetica, sans-serif">Not yet enrolled</font></font><font color="#666666"
size="2" face="Arial, Helvetica, sans-serif"><strong>
</strong></font> <font
color="#666666">
<% }
}%>
</font></td>
<td><a
href="course_step.jsp?course_id=<%=course_id%>">select</a></td>
</tr>
<%
}
}
catch(Exception e)
{
%>
Error ocuured in while : <%=e%>
<%
}
%>
</table>
</td>
</tr>
<tr>
<td>
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

View_profile.jsp
/***********************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<%
ResultSet rs=null;
String qry="";
String user_name=(String)session.getAttribute("user_name");
qry="SELECT * FROM tblelearning_users where user_name='" + user_name +
"'";
Statement st=conn.createStatement();
rs=st.executeQuery(qry);
if(rs.next()){
%>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<form name="updpass" method="post"
action="update_password.jsp">
<table width="40%" align="center">
<tr>
<td colspan="2" style="font-size:20px; font-
weight:bold;">Your Profile Details</td>
</tr>
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td align="right" class="infoLabel">User
Name:</td>
<td><%=rs.getString("user_name")%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Full
Name:</td>
<td><%=rs.getString("first_name")%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Designation:</td>
<td><%=rs.getString("designation")%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Email:</td>
<td><%=rs.getString("email")%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">City:</td>
<td><%=rs.getString("city")%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Country:</td>
<td><%=rs.getString("country")%></td>
</tr>
</table>
</form>
</div>
</div>
<% }%>
<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

Change_password.jsp
/**************************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>

<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<form name="updpass" method="post"
action="update_password.jsp">
<table width="40%" align="center">
<tr>
<td align="right" class="infoLabel">Old
Password:</td>
<td><input type="password"
name="old_pass"></td>
</tr>
<tr>
<td align="right" class="infoLabel">New
Password:</td>
<td class="infoValue"><input type="password"
name="new_pass"></td>
</tr>
<tr>
<td align="right" class="infoLabel">Retype
New Password:</td>
<td class="infoValue"><input type="password"
name="new_pass"</td>
</tr>
<tr>
<td align="right" class="infoLabel"></td>
<td class="infoValue"><input type="submit"
name="submit" value="Update"></td>
</tr>
</table>
</form>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

Update_password.jsp
/************************/
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<%@ include file="dbConnection.jsp" %>
<%
String user_name=(String)session.getAttribute("user_name");
String old_pass=request.getParameter("old_pass");
String new_pass=request.getParameter("new_pass");
ResultSet objRs=null;
String statement="";
try
{
statement="select * from tblelearning_users where user_name='" + user_name
+ "' and pass_word='" + old_pass + "'";
Statement
st=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_U
PDATABLE);
objRs=st.executeQuery(statement);
if(objRs.next())
{
objRs.updateString("pass_word",new_pass);
objRs.updateRow();
response.sendRedirect("login.jsp?result=Password Changed
Successfully.Please Login Again.");
}
else
{
response.sendRedirect("change_password.jsp?result=Incorrect Password.Try
Again!");
}
}
catch(Exception e)
{
out.print("error occured " + e);
}
%>

View_tutorials.jps
/**********************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<%
int course_id=0;
int is_objRs_present=0;
String statement="";
ResultSet objRs=null;
ResultSet objRsPaper=null;
String trainee_name="";
String course_name="";
if(request.getParameter("course_id")!=null)
{
course_id=Integer.parseInt(request.getParameter("course_id"));
}
try
{
statement="select * from tblelearning_users u,tblTrainee_history
t,tblCourses c,tblCategory cat where c.course_id=t.course_id and
t.user_name=u.user_name and c.course_category_id=cat.course_category_id
and c.course_id=" + course_id + " and u.user_name='" +
session.getAttribute("user_name") + "'";
Statement st=conn.createStatement();
objRs=st.executeQuery(statement);
if(objRs.next())
{
trainee_name=objRs.getString("first_name");
course_name=objRs.getString("course_name");
is_objRs_present=1;
}
else
{
response.sendRedirect("login.asp?result=Session Timed out");
}
session.setAttribute("trainee_id",objRs.getString("trainee_id"));

}
catch(Exception e)
{
%>error occured : <%=e%><%
}
%>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<table width="100%" align="center">
<tr>
<td height="34" colspan="4"
valign="top">&nbsp;</td>
<td align="center" valign="middle">
</tr>
<tr>
<td align="right" class="infoLabel">Your
Name:</td>
<td class="infoValue"><%=trainee_name%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Course
Name:</td>
<td class="infoValue"><%=course_name%></td>
</tr>
</table><br>
<table width="100%" height="258" align="center" >
<tr>
<td align="center" valign="top">
<!--start of result display-->
<table width="100%" align="center">
<tr>
<td>
<%
if(request.getParameter("result")!=null)
{
%>
<marquee loop="1"
behavior="alternate"><strong><font color="#FFffff" size="2" face="Arial,
Helvetica, sans-
serif"><%=request.getParameter("result")%></font></strong></marquee>
<%
}
%>
</td>
</tr>
</table>
<!--end of result display-->
<br>
<table width="100%" border="0" align="right"
cellpadding="3" cellspacing="3" bordercolorlight="#FFffff">
<%

try
{
statement="select * from tblPaper where
course_id=" + course_id;
Statement ss=conn.createStatement();
objRsPaper=ss.executeQuery(statement);
}
catch(Exception e)
{
%>
error occured in paper1 : <%=e%>
<%
}
try
{
if(is_objRs_present==1)
{
int is_previous_paper_completed=1;
int total_marks=0;
while(objRsPaper.next())
{
int paper_no=objRsPaper.getInt("paper_no");
int no_of_attempts=0;
int attempt_id=0;
int marks=0;
java.util.Date appeared_on=null;
String back_color="";
String attempt_message="";
String
paper_name=objRsPaper.getString("Paper_name");
no_of_attempts=objRs.getInt("paper" + paper_no +
"_no_of_attempts");
int paper_id=objRsPaper.getInt("paper_id");
String dbase=objRsPaper.getString("dbase");
int is_paper_completed=objRs.getInt("is_paper" +
paper_no + "_completed");
if(paper_no==1)
{
total_marks=objRs.getInt("total_marks");

}
if(is_paper_completed==1)
{
back_color="bgcolor=#ffffcc";
}
else
{
back_color="";
}
if(is_paper_completed==1)
{
attempt_message="Successfully Completed ";
}
else
{
if(is_previous_paper_completed==0)
{
attempt_message="Not yet Eligible as you have not
completed previous modules";
}
else
{
switch(no_of_attempts)
{
case 0:
attempt_id=1;
attempt_message="Not completed, You have a total
of 3 attempts";
break;
case 1:
attempt_id=2;
attempt_message="Not completed,1 attempt exhausted
,you have 2 more attempts.";
break;
case 2:
attempt_id=3;
attempt_message="Not completed,2 attempts
exhausted,you have 1 more attempt.";
break;
case 3:
attempt_message="All the attempts are exhausted
and so you cannot complete the e ";
break;
default:
attempt_message="Not completed, and you are
eligible for the exam ";

}
}

%>
<tr>
<td colspan="3"><strong><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">
Module.<%=paper_no%> : <%=paper_name%>&nbsp;
</font></strong>
<%
if(paper_no==1)
{
if(no_of_attempts<3 && is_paper_completed==0)
{%>
<a
href="view_tutorials2.jsp?attempt_id=<%=attempt_id%>&course_id=<%=course_i
d%>&paper_id=<%=paper_id%>&dbase=<%=dbase%>&no_of_attempts=<%=no_of_attemp
ts%>&paper_no=<%=paper_no%>" style="color:#0033ff;font-weight:bold">
Appear for the exam</a> <font size="2">
<%
}
else
{
%>
<del><strong><font color="#0033ff" face="Arial,
Helvetica, sans-serif" size="2">Appear
for the exam</font></strong></del>
<%

}
}
else
{
if(is_previous_paper_completed==1 &&
no_of_attempts<3 && is_paper_completed==0)
{
%>
<a
href="view_tutorials2.jsp?attempt_id=<%=attempt_id%>&course_id=<%=course_i
d%>&paper_id=<%=paper_id%>&dbase=<%=dbase%>&no_of_attempts=<%=no_of_attemp
ts%>&paper_no=<%=paper_no%>" style="color:#0033ff;font-
weight:bold;">Appear
for the exam</a>
<%

}
else
{
%>
<del><strong><font color="#0033ff" face="Arial,
Helvetica, sans-serif" size="2">Appear
for the exam</font></strong></del></font>
<%
}

}
%>
</td>
</tr>
<tr>
<td>&nbsp;</td><td colspan="2"><font
color="#003300" size="2" face="Verdana, Arial, Helvetica, sans-
serif"><%=attempt_message%></font></td>
</tr>
<%if(no_of_attempts>0)
{%>
<tr>
<td width="7%" class="infoLabel" >&nbsp;</td>
<td width="31%" class="infoLabel">Marks obtained
:</td>
<%

marks=(objRs.getInt("paper" + paper_no +
"_marks")*100)/total_marks;

%>
<td width="62%" class="infoValue"><%=marks%>%</td>
</tr>
<%
appeared_on=objRs.getDate("paper" + paper_no +
"_appeared_on");
String appeared_on_str=appeared_on.getDate() + "-"
+ (appeared_on.getMonth()+1) + "-" + (appeared_on.getYear()+1900);
%>
<tr>
<td>&nbsp;</td>
<td class="infoLabel">Appeared On :</td>
<td class="infoValue"><%=appeared_on_str%></td>
<%

%>
</tr>
<tr>
<td>&nbsp;</td>
<td class="infoLabel">No. of Attempts :</td>
<td class="infoValue"><%=no_of_attempts%></td>
</tr>
<%}%>
<tr>
<td colspan="3"><hr noshade color="#FFFFCC"></td>
</tr>
<%
is_previous_paper_completed=is_paper_completed;
}
%>
<tr>
<td class="infoLabel" colspan="3">Pass precentage
:50%</td>
</tr>
<%

}
else
{
out.print("NIL");
}

%>
</table>
</td>
</tr>
<%

}
catch(Exception e)
{
out.print("error occured in while of paper : " +
e);
}
%>
</table>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>
Course_step.jsp
/***********************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<script>
function fnMenuBg1(elementId)
{
document.getElementById(elementId).style.backgroundColor="#dfdfdf";
}
function fnMenuBg2(elementId)
{
document.getElementById(elementId).style.backgroundColor="";
}
function fnClick(getElement,course_id)
{
if(getElement=="enroll")
{
location.href="enroll.jsp?course_id=" + course_id;
}

if(getElement=="evaluate")
{
location.href="course_registration_form.jsp?course_id=" + course_id;
}
if(getElement=="exam")
{
location.href="view_tutorials.jsp?course_id=" + course_id;
}
if(getElement=="result")
{
location.href="course_registration_form.jsp?course_id=" + course_id;
}
if(getElement=="certificate")
{
location.href="view_certificate.jsp?course_id=" + course_id;
}
if(getElement=="choose")
{
location.href="course_list1_model2.jsp";
}

}
</script>
<%
String statement="";
String course_name="";
String course_category="";
String trainee_name="";
int no_of_papers=0;
String course_description="";
int course_id=0;
if(request.getParameter("course_id")!=null)
{
course_id=Integer.parseInt(request.getParameter("course_id"));
session.setAttribute("course_id",Integer.toString(course_id));
}
ResultSet objRs=null;
ResultSet oRsTraineeStatus=null;
try{
statement="select * from tblelearning_users u,tblCourses
c,tblCategory cat where c.course_category_id=cat.course_category_id and
c.course_id=" + course_id + " and u.user_name='" +
session.getAttribute("user_name") + "'";
Statement stat=conn.createStatement();
objRs=stat.executeQuery(statement);
}
catch(Exception e){
%>error occured : <%=e%><%
}%>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<table width="100%" border="0" align="center"
cellpadding="0" cellspacing="0" bordercolorlight="#FFFFFF">
<tr>
<td valign="top">
<table width="100%" border="0" height="380"
align="center" cellpadding="3" cellspacing="3">
<tr>
<td colspan="2">
<%

if(request.getParameter("result")!=null)
{
%>
<marquee loop="1"
behavior="alternate">
<strong><font color="#FFffff" size="2"
face="Arial, Helvetica, sans-
serif"><%=request.getParameter("result")%></font></strong></marquee>
<%
}

%>
</td>
</tr>
<tr><td valign="top">
<%
try{
if(objRs.next()){

trainee_name=objRs.getString("first_name");

course_name=objRs.getString("course_name");

course_category=objRs.getString("course_category");

no_of_papers=objRs.getInt("no_of_papers");
course_description=objRs.getString("course_description");
}
}
catch(Exception e){
out.print("Error occured in objRs : "
+ e);
}
%>

<%
try
{
statement="select * from
tblTrainee_history where course_id=" + course_id + " and user_name='" +
session.getAttribute("user_name") + "'";
Statement st=conn.createStatement();

oRsTraineeStatus=st.executeQuery(statement);
}
catch(Exception e)
{
%>error occured in parameters :
<%=e%><%
}
int is_registered=0;
int is_successfully_completed=0;
int is_paper1_completed=0;
int is_paper1_tutorial_viewed=0;
int is_evaluated=0;
String date_of_registration="";
String course_completed_date="";
try
{
if(oRsTraineeStatus.next())
{

is_paper1_tutorial_viewed=oRsTraineeStatus.getInt("is_paper1_tutoria
l_viewed");

is_paper1_completed=oRsTraineeStatus.getInt("is_paper1_completed");

is_registered=oRsTraineeStatus.getInt("is_registered");

date_of_registration=oRsTraineeStatus.getString("doe");

is_successfully_completed=oRsTraineeStatus.getInt("is_successfully_c
ompleted");

course_completed_date=oRsTraineeStatus.getString("course_completed_d
ate");

session.setAttribute("trainee_id",oRsTraineeStatus.getString("traine
e_id"));
}
}
catch(Exception e)
{
out.print("exception occured in
Trainee Status " + e);
}

%>
<table width="100%" border="0"
align="left" cellspacing="3">
<tr>
<td align="right"
class="infoLabel">Your Name:</td>
<td
class="infoValue"><%=trainee_name%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Course Name:</td>
<td
class="infoValue"><%=course_name%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Course Category:</td>
<td
class="infoValue"><%=course_category%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Total no. of Modules:</td>
<td
class="infoValue"><%=no_of_papers%></td>
</tr>
<tr>
<td align="right"
class="infoLabel">Course Description:</td>
<td
class="infoValue"><%=course_description%></td>
</tr>
</table>
</td><td valign="top">
<table border="0" align="left"
cellspacing="3">
<tr>
<td><font color="#FF0000" size="2"
face="Verdana, Arial, Helvetica, sans-serif">step
1.</font></td>
<td>
<%if(is_registered==0)
{%>
<input style="text-align:left;padding-
left:10px;width:220px;background:#dddddd;font-face:verdana;font-
weight:bold" type="button" value="Enroll for this course" name="enroll"
onClick="fnClick('enroll','<%=course_id%>')">
<%
}
else
{%>
<input disabled style="text-
align:left;padding-left:10px;width:220px;background:#dddddd;font-
face:verdana;font-weight:bold" type="button" value="Enroll for this
course" name="enroll">
<%}%>
</td>
</tr>
<tr>
<td><font color="#FF0000" size="2"
face="Verdana, Arial, Helvetica, sans-serif">step
2.</font></td>
<td>
<%if(is_registered==0 ||
is_paper1_tutorial_viewed==1 || is_successfully_completed==1)
{%>
<input disabled type="button"
style="text-align:left;padding-
left:10px;width:220px;background:#dddddd;font-face:verdana;font-
weight:bold" name="exam" value="Appear for the exam"
onClick="fnClick('exam','<%=course_id%>')">
<%
}
else
{%>
<input type="button" style="text-
align:left;padding-left:10px;width:220px;background:#dddddd;font-
face:verdana;font-weight:bold" name="exam" value="Appear for the exam"
onClick="fnClick('exam','<%=course_id%>')">
<%}%>
</td>
</tr>
<tr>
<td><font color="#FF0000" size="2"
face="Verdana, Arial, Helvetica, sans-serif">step
3.</font></td>
<td>
<%if(is_paper1_completed==0 ||
is_registered==0)
{%>
<input disabled type="button"
style="text-align:left;padding-
left:10px;width:220px;background:#dddddd;font-face:verdana;font-
weight:bold" value="View Result" name=result
onClick="fnClick('result','<%=course_id%>')">
<%
}
else
{%>
<input type="button" style="text-
align:left;padding-left:10px;width:220px;background:#dddddd;font-
face:verdana;font-weight:bold" value="View Result" name=result
onClick="location.href='view_result.jsp?course_id=<%=course_id%>' ">
<%}%>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

Enroll.jsp
/*******************/
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<%
int course_id=Integer.parseInt(request.getParameter("course_id"));
int no_of_papers=0;
String qry1="";
String qry2="";
try
{
qry1="select no_of_papers from tblCourses where course_id=" + course_id;
Statement stat=conn.createStatement();
ResultSet objRs=stat.executeQuery(qry1);
if(objRs.next())
{
no_of_papers=objRs.getInt("no_of_papers");
}
}
catch(Exception e)
{
out.print("error occured 11:" + e);
}
try
{
String user_name=(String)session.getAttribute("user_name");
java.util.Date now=new java.util.Date();
java.sql.Date date=new
java.sql.Date(now.getYear(),now.getMonth(),now.getDate());
String trainee_id="eL_" + course_id + "_" + user_name;
session.setAttribute("trainee_id",trainee_id);
qry2="select * from tblTrainee_history";
Statement
st=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_U
PDATABLE);
ResultSet objRsInsert=st.executeQuery(qry2);
objRsInsert.moveToInsertRow();
objRsInsert.updateString("trainee_id",trainee_id);
objRsInsert.updateString("user_name",user_name);
objRsInsert.updateInt("is_registered",1);
objRsInsert.updateInt("is_paper1_tutorial_viewed",0);
objRsInsert.updateInt("is_paper2_tutorial_viewed",0);
objRsInsert.updateInt("is_paper3_tutorial_viewed",0);
objRsInsert.updateInt("is_attended_exam",0);
objRsInsert.updateInt("course_id",course_id);
objRsInsert.updateInt("paper1_no_of_attempts",0);
objRsInsert.updateInt("paper2_no_of_attempts",0);
objRsInsert.updateInt("paper3_no_of_attempts",0);
objRsInsert.updateInt("is_paper1_completed",0);
objRsInsert.updateInt("is_paper2_completed",0);
objRsInsert.updateInt("is_paper3_completed",0);
objRsInsert.updateInt("paper1_marks",0);
objRsInsert.updateInt("paper2_marks",0);
objRsInsert.updateInt("paper3_marks",0);
objRsInsert.updateDate("doe",date);
objRsInsert.updateInt("no_of_papers",no_of_papers);
objRsInsert.insertRow();
response.sendRedirect("course_step.jsp?result=Enrolled
successfully.&course_id=" + course_id);

}
catch(Exception e)
{
out.print("error occured : " + e);
}
%>

Exam_questions.jsp
/**********************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<%

String dbase=(String)session.getAttribute("dbase");
String trainee_id=(String)session.getAttribute("trainee_id");
String user_name=(String)session.getAttribute("user_name");
int
attempt_id=Integer.parseInt((String)session.getAttribute("attempt_id"));
int
number_of_questions=Integer.parseInt((String)session.getAttribute("number_
of_questions"));
int course_id=Integer.parseInt((String)session.getAttribute("course_id"));
int paper_id=Integer.parseInt((String)session.getAttribute("paper_id"));
String statement=null;
ResultSet objRs=null;
ResultSet objRsQNo=null;
ResultSet objRsQ=null;
int no_of_papers=0,paper_no=0;
String course_name="",trainee_name="",paper_name="";
try
{
statement="select * from tblelearning_users u,tblTrainee_history
t,tblCourses c ,tblPaper p where p.course_id=c.course_id and
c.course_id=t.course_id and t.user_name=u.user_name and c.course_id=" +
course_id + " and u.user_name='" + user_name + "' and p.paper_id=" +
paper_id;
Statement st=conn.createStatement();
objRs=st.executeQuery(statement);
if(objRs.next())
{
course_name=objRs.getString("course_name");
trainee_name=objRs.getString("first_name");
paper_name=objRs.getString("paper_name");
no_of_papers=objRs.getInt("no_of_papers");
paper_no=objRs.getInt("paper_no");
}
}
catch(Exception e)
{
out.print("error occured 1 :" + e);
}
int i=0;
if(request.getParameter("question_no")==null)
{
i=1;
}
else
{
i=Integer.parseInt(request.getParameter("question_no"))+1;
}
try
{
statement="select * from tblresults where paper_id=" + paper_id + " and
course_id=" + course_id + " and trainee_id='" + trainee_id + "'";
Statement ss=conn.createStatement();
objRsQNo=ss.executeQuery(statement);
if(objRsQNo.next())
{
if(i<= number_of_questions)
{
statement="select * from tblQuestions where paper_id=" + paper_id + " and
question_id=" + objRsQNo.getInt("qn" + i);
Statement stt=conn.createStatement();
objRsQ=stt.executeQuery(statement);
}
}

}
catch(Exception e)
{
out.print("error occured 22 :" + e);
}
%>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<table width="100%" align="center">
<tr>
<td height="34" colspan="4"
valign="top">&nbsp;</td>
<td align="center" valign="middle">
</tr>
<tr>
<td align="right" class="infoLabel">Your
Name:</td>
<td class="infoValue"><%=trainee_name%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Course
Name:</td>
<td class="infoValue"><%=course_name%></td>
</tr>
</table><br>
<form method="post" action="exam_question_insert.jsp" >
<input type="hidden" name="question_no" value="<%=i%>">
<table width="100%" align="left" >
<tr>
<td colspan="3"><hr color="#FFFFff" noshade
size="1"></td>
</tr>
<%
try
{
if(objRsQ.next())
{
%>
<tr >
<td width="9%" class="infoLabel">Q
No.<strong><%=i%></strong></td>
<td colspan="2"
class="infoLabel"><%=objRsQ.getString("question")%></td>
</tr>
<tr>
<td>&nbsp;&nbsp;</td>
<td colspan="2" class="infoValue"> <input type="radio"
name="choice<%=i%>" value=1>
<%=objRsQ.getString("choice1")%></td>
</tr>
<tr>
<td>&nbsp;</td>
<td colspan="2" class="infoValue"> <input type="radio"
name="choice<%=i%>" value=2>
<%=objRsQ.getString("choice2")%></td>
</tr>
<tr>
<td>&nbsp;</td>
<td colspan="2" class="infoValue"> <input type="radio"
name="choice<%=i%>" value=3>
<%=objRsQ.getString("choice3")%></td>
</tr>
<tr>
<td>&nbsp;</td>
<td colspan="2" class="infoValue"> <input type="radio"
name="choice<%=i%>" value=4>
<%=objRsQ.getString("choice4")%></td>
</tr>
<%
}

}
catch(Exception e)
{
out.print("error occured 55 : " + e);
}
%>
<tr>
<td colspan="3"><hr color="#FFFFff" noshade
size="1"></td>
</tr>
<tr>
<td align=center> </td>
<td align="center">
<% if(i==number_of_questions)
{
%>
<input type="submit" value="Finish" style="font-
size:13pt;" name="submit" onClick="return fnConfirm()">
<%
}
else
{
%>
<input type="submit" value="Next" style="font-
size:13pt;" name="submit">
<%
}
%>
</td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

Exam_question_insert.jsp
/****************************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<%
String trainee_id=(String)session.getAttribute("trainee_id");
int
number_of_questions=Integer.parseInt((String)session.getAttribute("number_
of_questions"));
int course_id=Integer.parseInt((String)session.getAttribute("course_id"));
int paper_id=Integer.parseInt((String)session.getAttribute("paper_id"));
int
attempt_id=Integer.parseInt((String)session.getAttribute("attempt_id"));
int i=Integer.parseInt(request.getParameter("question_no"));
String statement=null;
ResultSet objRs=null;

try
{
statement="select * from tblresults where attempt_id=" + attempt_id + "
and course_id=" + course_id + " and paper_id=" + paper_id + " and
trainee_id='" + trainee_id + "'";
Statement
st=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_U
PDATABLE);
objRs=st.executeQuery(statement);
objRs.next();
if(request.getParameter("choice" + i)!=null)
{
objRs.updateInt("ans" + i,Integer.parseInt(request.getParameter("choice" +
i)));
}
else
{
objRs.updateInt("ans" + i,0);
}
objRs.updateRow();

}
catch(Exception e)
{
out.print("error occured 11 : " + e);
}
out.print(number_of_questions);
if(i<number_of_questions)
{
response.sendRedirect("exam_question.jsp?question_no=" + i);
}
else
{
response.sendRedirect("result_calculation.jsp");
}
%>

View_tutorials2.jsp
/**********************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<%
String statement="";
ResultSet objRs=null;
ResultSet oRsQn=null;
int course_id=0;
int paper_no=0;
int attempt_id=0;
String attempt="";
String paper_name="";
String course_name="";
String trainee_name="";
int number_of_questions=0;
String user_name=(String)session.getAttribute("user_name");
if(request.getParameter("course_id")!=null)
{
course_id=Integer.parseInt(request.getParameter("course_id"));
paper_no=Integer.parseInt(request.getParameter("paper_no"));
attempt_id=Integer.parseInt(request.getParameter("attempt_id"));

}
try
{
statement="select * from tblelearning_users u,tblTrainee_history
t,tblCourses c,tblPaper p where c.course_id=t.course_id and
t.user_name=u.user_name and c.course_id=p.course_id and c.course_id=" +
course_id + " and u.user_name='" + user_name + "'";
Statement st=conn.createStatement();
objRs=st.executeQuery(statement);
if(objRs.next())
{
paper_name=objRs.getString("paper_name");
course_name=objRs.getString("course_name");
trainee_name=objRs.getString("first_name");
}
}
catch(Exception e)
{
out.print("Error occured : " + e);
}

if(attempt_id==1)
{
attempt="first";
}
else
{
if(attempt_id==2)
{
attempt="second";
}
else
{
attempt="third";
}
}
number_of_questions=10;
session.setAttribute("number_of_questions","" + number_of_questions);
%>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">

<table width="100%" align="center">


<tr>
<td align="right" class="infoLabel">Your Name:</td>
<td class="infoValue"><%=trainee_name%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Course Name:</td>
<td class="infoValue"><%=course_name%></td>
</tr>
</table>

<!--start of result display-->


<table width="100%" align="center">
<tr>
<td>
<%
if(request.getParameter("result")!=null)
{
%>
<marquee loop="1" behavior="alternate"><strong><font
color="#FFffff" size="2" face="Arial, Helvetica, sans-
serif"><%=request.getParameter("result")%></font></strong></marquee>
<%
}
%>
</td>
</tr>
</table>
<!--end of result display-->

<table width="75%" border="0" cellpadding="0"


cellspacing="0" bordercolorlight="#FFFFFF">
<tr>
<td><table width="100%" border="0" cellpadding="5">
<tr>
<td width="8%">&nbsp;</td>
<td width="92%" class="infoValue">&nbsp;</td>
</tr>
<tr>
<td align="center" class="infoLabel">1.</td>
<td class="infoLabel">You have chosen to attempt the
module <font color="#ff0000"><%=paper_name%></font>
of <font color="#ff0000"><%=course_name%>.</font></td>
</tr>
<tr>
<td align="center" class="infoLabel">2.</td>
<td class="infoLabel">Click on 'Begin Test' button to
start the test.</td>
</tr>
<tr>
<td align="center" class="infoLabel">3.</td>
<td class="infoLabel">It is considered as your <font
color="#ff0000"><%=attempt%></font>
attempt.</td>
</tr>
<tr>
<td align="center" class="infoLabel">4.</td>
<td class="infoLabel">Click on the 'Next' button to move
to the next question.</td>
</tr>
<tr>
<td align="center" class="infoLabel">5.</td>
<td class="infoLabel">Click the 'Review' button to
review your answers after completing.</td>
</tr>
<tr>
<td align="center" class="infoLabel">6.</td>
<td class="infoLabel">All questions carry equal
marks.</td>
</tr>
<tr>
<td align="center" class="infoLabel">7.</td>
<td class="infoLabel">Each test contains <font
color="#ff0000"><%=number_of_questions%></font> questions.</td>
</tr>
<tr>
<form action="end_of_tutorials.jsp" method=post>
<input type=hidden name="paper_no"
value="<%=paper_no%>">
<input type=hidden name="course_id"
value="<%=course_id%>">
<input type=hidden name="no_of_attempts"
value="<%=request.getParameter("no_of_attempts")%>">
<input type=hidden name="dbase"
value="<%=request.getParameter("dbase")%>">
<input type=hidden name="attempt_id"
value="<%=attempt_id%>">
<input type=hidden name="paper_id"
value="<%=request.getParameter("paper_id")%>">
<td>&nbsp;</td>
<td><input type=submit value="Begin Test" style="font-
size:12px;font-weight:bold;">
</td>
</form>
</tr>
</table></td>
</tr>
</table>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

End_of_tutorials.jsp
/*************************/
<%@ page language="java" %>
<%@ page import ="java.sql.*" %>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<%
String statement=null;
ResultSet objRs=null;
ResultSet oRsQn=null;
ResultSet oRsTotQns=null;
int number_of_questions=3;
int course_id=0;
int paper_no=0,paper_id=0,attempt_id=0;
String trainee_id=null;
int total_qns=0;
if(request.getParameter("course_id")!=null)
{
course_id=Integer.parseInt(request.getParameter("course_id"));
session.setAttribute("course_id",""+course_id);
trainee_id=(String)session.getAttribute("trainee_id");
paper_no=Integer.parseInt(request.getParameter("paper_no"));
session.setAttribute("paper_no",""+paper_no);
attempt_id=Integer.parseInt(request.getParameter("attempt_id"));
session.setAttribute("attempt_id",""+attempt_id);
paper_id=Integer.parseInt(request.getParameter("paper_id"));
session.setAttribute("paper_id",""+paper_id);
}
try
{
statement="select * from tblTrainee_history where course_id=" + course_id
+ " and trainee_id='" + trainee_id + "'";
Statement st=conn.createStatement();
objRs=st.executeQuery(statement);;

}
catch(Exception e)
{
out.print("errror occured 1 : " + e);
}
number_of_questions=Integer.parseInt((String)session.getAttribute("number_
of_questions"));
try
{
statement="select count(*) as total_qns from tblQuestions where paper_id="
+ paper_id;
Statement ss=conn.createStatement();
oRsTotQns=ss.executeQuery(statement);
if(oRsTotQns.next())
{
total_qns=oRsTotQns.getInt("total_qns");
}

}
catch(Exception e)
{
out.print("errror occured 3 : " + e);
}
/**if(total_qns < number_of_questions)
{
response.sendRedirect("view_tutorials.jsp?result=This Course contains less
than " + number_of_questions + " questions. Hence Test is not permitted.
Please select some other course");
}**/
int last_qn=total_qns-1;
int i=0;
ResultSet oRsID=null;
int qn_array[]=new int[total_qns];
try
{
statement="select question_id from tblQuestions where paper_id=" +
paper_id;
Statement stt=conn.createStatement();
oRsID=stt.executeQuery(statement);
while(oRsID.next())
{
qn_array[i]=oRsID.getInt("question_id");
i=i+1;
}

}
catch(Exception e)
{
out.print("errror occured 4 : " + e);
}

/*randomize
for j=last_qn to number_of_questions step -1
random_no=int(rnd* last_qn)
qn_array(random_no)=qn_array(last_qn)
redim preserve qn_array(last_qn)
last_qn=last_qn-1
next
redim preserve qn_array(ubound(qn_array)-1)

for i=0 to ubound(qn_array)


for j=0 to (ubound(qn_array)-i-1)
if qn_array(j)>qn_array(j+1) then
temp=qn_array(j)
qn_array(j)=qn_array(j+1)
qn_array(j+1)=temp
end if
next
next
response.write("sorted list")
*/
try
{
String qn_qns_str="";
String qn_qns_val="";
String qn_ans_str="";
String qn_ans_val="";
for(int k=0;k<i;k++)
{
qn_qns_str=qn_qns_str + ",qn" + (k+1);
qn_qns_val=qn_qns_val + "," + qn_array[k];
qn_ans_str=qn_ans_str + ",ans" + (k+1);
qn_ans_val=qn_ans_val + ",0";
}
statement="insert into
tblresults(course_id,trainee_id,paper_id,attempt_id" + qn_qns_str +
qn_ans_str + ") values(" + course_id + ",'" + trainee_id + "'," + paper_id
+ "," + attempt_id + qn_qns_val + qn_ans_val + ")";
Statement sts=conn.createStatement();
int count=sts.executeUpdate(statement);
if(count>0)
{
out.println("successfully");

}
else
{
out.print("failure");
}

}
catch(Exception e)
{
out.print("error occured 55 : " + e);
}

try
{
response.sendRedirect("exam_question.jsp");
}
catch(Exception e)
{
out.println("error occured :" + e);
}

%>

View_result.jsp
/*******************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<%
int course_id=0;
int is_objRs_present=0;
String statement="";
ResultSet objRs=null;
ResultSet objRsPaper=null;
String user_name=(String)session.getAttribute("user_name");
String trainee_name="";
String course_name="";
if(request.getParameter("course_id")!=null)
{
course_id=Integer.parseInt(request.getParameter("course_id"));
}
try
{
statement="select * From tblelearning_users u,tblTrainee_history
t,tblCourses c,tblCategory cat where c.course_id=t.course_id and
t.user_name=u.user_name and c.course_category_id=cat.course_category_id
and c.course_id=" + course_id + " and u.user_name='" + user_name + "'";
Statement st=conn.createStatement();
objRs=st.executeQuery(statement);
if(objRs.next())
{
trainee_name=objRs.getString("first_name");
course_name=objRs.getString("course_name");
is_objRs_present=1;
}
else
{
response.sendRedirect("login.jsp?result=Session Timed out");
}
session.setAttribute("trainee_id",objRs.getString("trainee_id"));

}
catch(Exception e)
{
%>error occured : <%=e%><%
}
%>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<table width="95%" border="0" align="left"
cellpadding="0" cellspacing="0" bordercolorlight="#FFFFFF">
<tr>
<td>
<table width="100%" height="858" >
<tr>
<td align="center" valign="top">
<!--start of result display-->
<table width="100%" align="center">
<tr>
<td>
<%
if(request.getParameter("result")!=null)
{
%>
<marquee loop="1"
behavior="alternate"><strong><font color="#FFffff" size="2" face="Arial,
Helvetica, sans-
serif"><%=request.getParameter("result")%></font></strong></marquee>
<%
}
%>
</td>
</tr>
</table>
<!--end of result display-->
<br>
<table width="50%" border="0" align="left"
cellpadding="3" cellspacing="3" bordercolorlight="#FFffff">
<%

try
{

statement="select * from tblPaper where


course_id=" + course_id;
Statement stat=conn.createStatement();
objRsPaper=stat.executeQuery(statement);
}
catch(Exception e)
{
%>
error occured in paper : <%=e%>
<%
}
try
{
if(is_objRs_present==1)
{
int is_previous_paper_completed=1;
int total_marks=0;

while(objRsPaper.next())
{
int paper_no=objRsPaper.getInt("paper_no");
int no_of_attempts=0;
int attempt_id=0;
int marks=0;
java.util.Date appeared_on=null;
String back_color="";
String attempt_message="";
String
paper_name=objRsPaper.getString("paper_name");
no_of_attempts=objRs.getInt("paper" +
paper_no + "_no_of_attempts");
int paper_id=objRsPaper.getInt("paper_id");
String dbase=objRsPaper.getString("dbase");
int
is_paper_completed=objRs.getInt("is_paper" + paper_no + "_completed");
if(paper_no==1)
{
total_marks=objRs.getInt("total_marks");
}
if(is_paper_completed==1)
{
back_color="bgcolor=#ffffcc";
}
else
{
back_color="";
}
if(is_paper_completed==1)
{
attempt_message="Successfully Completed ";
}
else
{

if(is_previous_paper_completed==0)
{
attempt_message="Not yet Eligible as you
have not completed previous modules";
}
else
{
switch(no_of_attempts)
{
case 0:
attempt_id=1;
attempt_message="Not completed, You have a
total of 3 attempts";
break;
case 1:
attempt_id=2;
attempt_message="Not completed,1 attempt
exhausted ,you have 2 more attempts.";
break;
case 2:
attempt_id=3;
attempt_message="Not completed,2 attempts
exhausted,you have 1 more attempt.";
break;
case 3:
attempt_message="All the attempts are
exhausted and so you cannot complete the e ";
break;
default:
attempt_message="Not completed, and you are
eligible for the exam ";

} } } %>
<tr>
<td colspan="3"><strong><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">
Module.<%=paper_no%> : <%=paper_name%>&nbsp;
</font></strong>
</td> </tr>
<tr>
<td>&nbsp;</td><td colspan="2"><font
color="#FFFF00" size="2" face="Verdana, Arial, Helvetica, sans-
serif"><%=attempt_message%></font></td>
</tr>
<%if(no_of_attempts>0)
{%>
<tr>
<td width="7%" class="infoLabel"
>&nbsp;</td>
<td width="31%" class="infoLabel">Marks
obtained :</td>
<%
marks=(objRs.getInt("paper" + paper_no +
"_marks")*100)/total_marks;
%>
<td width="62%"
class="infoValue"><%=marks%>%</td>
</tr>
<% appeared_on=objRs.getDate("paper" +
paper_no + "_appeared_on");
String appeared_on_str=appeared_on.getDate()
+ "-" + (appeared_on.getMonth()+1) + "-" + (appeared_on.getYear()+1900);
%>
<tr>
<td>&nbsp;</td>
<td class="infoLabel">Appeared On :</td>
<td
class="infoValue"><%=appeared_on_str%></td>
</tr>
<tr>
<td>&nbsp;</td>
<td class="infoLabel">No. of Attempts :</td>
<td
class="infoValue"><%=no_of_attempts%></td>
</tr>
<%}%>
<tr>
<td colspan="3"><hr noshade
color="#FFFFCC"></td>
</tr>
<%
is_previous_paper_completed=is_paper_completed;} %>
<tr>
<td class="infoLabel" colspan="3">Pass
precentage :50%</td>
</tr>
<% }
else
{ out.print("NIL");
}
%>
</table> <td></tr>
<% }
catch(Exception e)
{ out.print("error occured in while of paper
: " + e);
}
%>
</table>
</td>
</tr>
</table>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

Result_calculation.jsp
/****************************/
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*"%>
<%@ include file="dbConnection.jsp" %>
<jsp:include page="header.jsp"/>
<%
String trainee_id=(String)session.getAttribute("trainee_id");
String user_name=(String)session.getAttribute("user_name");
int
number_of_questions=Integer.parseInt((String)session.getAttribute("number_
of_questions"));
int course_id=Integer.parseInt((String)session.getAttribute("course_id"));
int paper_id=Integer.parseInt((String)session.getAttribute("paper_id"));
int
attempt_id=Integer.parseInt((String)session.getAttribute("attempt_id"));
String statement=null;
ResultSet objRs=null;
ResultSet objRs1=null;
ResultSet objRsQNo=null;
ResultSet objRsUpdate=null;
ResultSet objRsUpdate1=null;
String trainee_name="",course_name="",paper_name="",course_category="";
int no_of_papers=0,paper_no=0;
try
{
statement="select * from tblelearning_users u,tblTrainee_history
t,tblCourses c ,tblPaper p,tblCategory cat where
c.course_category_id=cat.course_category_id and p.course_id=c.course_id
and c.course_id=t.course_id and t.user_name=u.user_name and c.course_id="
+ course_id + " and u.user_name='" + user_name + "' and p.paper_id=" +
paper_id;
Statement st=conn.createStatement();
objRs1=st.executeQuery(statement);
if(objRs1.next())
{
trainee_name=objRs1.getString("first_name");
course_name=objRs1.getString("course_name");
paper_name=objRs1.getString("paper_name");
course_category=objRs1.getString("course_category");
no_of_papers=objRs1.getInt("no_of_papers");
paper_no=objRs1.getInt("paper_no");
}
}
catch(Exception e)
{
out.print("error occured ");
}
try
{
statement="select * from tblresults where attempt_id=" + attempt_id + "
and course_id=" + course_id + " and paper_id=" + paper_id + " and
trainee_id='" + trainee_id + "'";
Statement ss=conn.createStatement();
objRsQNo=ss.executeQuery(statement);
objRsQNo.next();
}
catch(Exception e)
{
out.print("error occured 22 :"+e);
}
%>
<script>
function fnMenuBg1(elementId)
{
document.getElementById(elementId).style.backgroundColor="#dfdfdf";
}
function fnMenuBg2(elementId)
{
document.getElementById(elementId).style.backgroundColor="";
}
function fnConfirm()
{
return confirm("Are you sure you want to FINISH the exam?");
}
function fnClick()
{
location.href="course_tutorial1.jsp?course_id=<%=course_id%>";

}
</script>
<div id="main">
<div id="contentbg">
<div id="contenttxtblank_10">
<jsp:include page="usr_menu_top.jsp"/>
<div id="callus1">
</div>
<div id="lefttxtblank1">
<table width="100%">
<tr>
<td height="34" colspan="4" valign="top">&nbsp;</td>
<td align="center" valign="middle">
<table border="0" align="right" cellpadding="5">
<tr>
<td align="right" class="infoLabel">Your Name:</td>
<td class="infoValue"><%=trainee_name%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Course Name:</td>
<td class="infoValue"><%=course_name%></td>
</tr>
<tr>

<td align="right" class="infoLabel">Module Name:</td>


<td class="infoValue"><%=paper_name%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Module No.:</td>
<td class="infoValue"><%=paper_no%>/<%=no_of_papers%></td>
</tr>
<tr>
<td align="right" class="infoLabel">Attempt No.:</td>
<td class="infoValue"><%=attempt_id%>/3</td>
</tr>

</table> </td>
</tr>
</table>
<!--start of result display-->
<!--end of result display-->
<table width="100%" height="100%" border="0">
<tr>
<td valign="top">

<table width="75%" border="0">


<tr>

</tr>
<%
int i=1;
int total=0;
String
back_color="",choice1="",choice2="",choice3="",choice4="";
int objRsQNans=0;
String question="";
while(i<= number_of_questions)
{
int user_ans=0;
try
{

statement="select * from tblQuestions where paper_id=" +


paper_id + " and question_id=" + objRsQNo.getInt("qn" + i);
Statement sts=conn.createStatement();
objRs=sts.executeQuery(statement);
if(objRs.next())
{
user_ans=objRs.getInt("ans");
choice1=objRs.getString("choice1");
choice2=objRs.getString("choice2");
choice3=objRs.getString("choice3");
choice4=objRs.getString("choice4");
question=objRs.getString("question");
}
objRsQNans=objRsQNo.getInt("ans" + i);
}
catch(Exception e)
{
out.println("error occured 55 : "+e);
}
%>
<tr>
<td width="5%" rowspan="5" align="left" valign="top"
class="infoLabel"><%=i%>.</td>
<td width="95%" class="infoValue"><%=question%></td>
</tr>
<%if(user_ans==1)
{
back_color="";
}
else
{
back_color="";
}
%>
<tr <%=back_color%>>
<%if(objRsQNans==1)
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=1 checked
disabled>
<%=choice1%>
<%if(user_ans==1)
{%>
<img src="qbright.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">1
mark</font>
<%total=total+1;%>
<%
}
else
{%>
<img src="qbwrong.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">0
mark</font>
<%}%>
</td>
<%
}
else
{%>
<%if(objRsQNans==0)
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=1 disabled>
<%=choice1%><img src="not_attempted.gif" height="20"
border="0"><font color="#FF0000" size="1" face="Verdana, Arial, Helvetica,
sans-serif">Not
attempted</font></td>
<%}
else
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=1 disabled>
<%=choice1%></td>
<%}%>
<%}%>
</tr>
<%
if(user_ans==2)
{
back_color="";
}
else
{
back_color="";
}

%>
<tr <%=back_color%>>
<%if(objRsQNans==2)
{%>
<td class="infoValue" >
<input type="radio" name="choice<%=i%>" value=2 checked
disabled>
<%=choice2%>
<%if(user_ans==2)
{%>
<img src="qbright.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">1
mark</font>
<%total=total+1;%>
<%
}
else
{%>
<img src="qbwrong.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">0
mark</font>
<%}%>
</td>
<%}
else
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=2 disabled>
<%=choice2%></td>
<%}%>
</tr>
<%
if(user_ans==3)
{
back_color="";
}
else
{
back_color="";
}
%>
<tr <%=back_color%>>
<%if(objRsQNans==3)
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=3 checked
disabled>
<%=choice3%>
<%if(user_ans==3)
{%>
<img src="qbright.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">1
mark</font>
<%total=total+1;%>
<%
}
else
{%>
<img src="qbwrong.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">0
mark</font>
<%}%>
</td>
<%
}
else
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=3 disabled>
<%=choice3%></td>
<%}%>
</tr>
<%
if(user_ans==4)
{
back_color="";
}
else
{
back_color="";
}
%>
<tr <%=back_color%>>
<%if(objRsQNans==4)
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=4 checked
disabled>
<%=choice4%>
<%if(user_ans==4)
{%>
<img src="qbright.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">1
mark</font>
<%total=total+1;%>
<%
}
else
{%>
<img src="qbwrong.gif" height="20" border="0"><font
color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif">0
mark</font>
<%}%>
</td>
<%
}
else
{%>
<td class="infoValue">
<input type="radio" name="choice<%=i%>" value=4 disabled>
<%=choice4%></td>
<%}%>
</tr>

<tr>
<td colspan="2"><hr color="#FFffff" size="1" ></td>
</tr>
<%

i=i+1;
}
%>
<tr>
<td colspan="2"><font color="#FF0000" size="5" face="Arial,
Helvetica, sans-serif">TOTAL
MARKS :
<strong><%=total%>/<%=number_of_questions%></strong><br>
</strong>
<%
try
{
statement="select * from tblresults where attempt_id=" +
attempt_id + " and course_id=" + course_id + " and paper_id=" + paper_id +
" and trainee_id='" + trainee_id + "'";
Statement sst=conn.createStatement();
objRsUpdate=sst.executeQuery(statement);
objRsUpdate.next();
objRsUpdate.updateInt("Result",total);
objRsUpdate.updateRow();

}
catch(Exception e)
{
out.println("eror occured 66 : " + e);
}
try
{
statement="select * from tblTrainee_history where course_id="
+ course_id + " and trainee_id='" + trainee_id + "'";
Statement stt=conn.createStatement();
objRsUpdate1=stt.executeQuery(statement);
objRsUpdate1.next();
objRsUpdate1.updateInt("paper_id" + paper_no,paper_id);
objRsUpdate1.updateInt("paper" + paper_no +
"_no_of_attempts",attempt_id);
objRsUpdate1.updateInt("paper" + paper_no + "_marks",total);
objRsUpdate1.updateInt("is_attended_exam",1);
java.util.Date now=new java.util.Date();
java.sql.Date date = new
java.sql.Date(now.getYear(),now.getMonth(),now.getDate());
objRsUpdate1.updateDate("paper" + paper_no +
"_appeared_on",date);
objRsUpdate1.updateInt("total_marks",number_of_questions);
if(total>(number_of_questions /2))
{
objRsUpdate1.updateInt("is_paper" + paper_no +
"_completed",1);
objRsUpdate1.updateDate("paper" + paper_no +
"_completed_date",date);
out.print("STATUS:<strong>PASS</strong> <br>");
if(paper_no==no_of_papers)
{
objRsUpdate1.updateInt("is_successfully_completed",1);
objRsUpdate1.updateDate("course_completed_date",date);
}
}
else
{
out.print("STATUS:<strong>FAIL</strong> <br>");
}
objRsUpdate1.updateRow();
}
catch(Exception e)
{
out.println("error occured 77 : " + e);
}
%>
ATTEMPT NO.:<strong><%=attempt_id%></strong> </FONt></td>
</tr>
<tr>
<td colspan="2"><hr noshade color="#FFFFFF" size="1"></td>
</tr>
<tr>
<td colspan="2"><input type=button value="Continue"
onClick="fnClick()"></td>
</tr>
</table>

</td>
</tr>
</table>
<%
session.removeAttribute("paper_no");
session.removeAttribute("paper_id");
session.removeAttribute("attempt_id");
%>
<p>&nbsp;</p>
</div>
</div>

<div id="blank_bg">
</div>
</div>
</div>
<jsp:include page="footer.jsp"/>

Logout.jsp
/**************/
<%
session.removeAttribute("user_name");
session.invalidate();
response.sendRedirect("login.jsp?result=You have successfully logout out
of the system");
%>

7. TESTING
7.1 TestPlan:-This document describes the plan for testing E-Learning Software. All the
major testing strategies are specified here; additional testing may be scheduled later, if
necessary.

7.1.1 Test Units


I7n this project we will perform two levels of testing: Unit testing & System testing.
Because the System is moderate in Size, it is felt that there is no need for elaborate
integration testing. The basic units to be tested are:
# Modules to Tables
# Tables to Reports
# Other Units
In addition, some other units may be chosen for testing. The testing for these different
units will be done independently.

7.1.2 Features To Be Tested


All the functional features specified in the requirement document will be tested. No testing
will be done for the performance, as the response time requirement is quite weak.

7.1.3 Approach To Testing


For Unit Testing, Structural Testing based on the branch coverage criterion will be used.
The goal is to achieve branch coverage of more than 95%. System testing will be largely
functional in nature. The focus is on Invalid and Valid cases, Boundary Value and Special
Cases.
7.1.4 Test Deliverables
The following documents are required (besides this Test Plan):
• Unit test report of each Unit.
• Test case Specification for System Testing
• Test Report for System Testing
• Error Report

The test case specification for System Testing has to be submitted for review before System
Testing Commences.

7.1.5 Schedule
The entire testing- Unit & System will be finished within the month of December. Test case
Specifications for the System Testing will be produced while Unit Testing is going on. This
Schedule is consistent with the over all schedule of the project. The schedule for the
testing is shown in the Project Planning section.

7.2 Test Case Specification for System Testing

Here we specify all the test cases that are used for System Testing. First, the different
conditions that need to be tested, along with the test cases for testing those condition and
the expected output are given. Then the data files used for testing are given. The Test cases
are specified with respect to these data files. The Test cases have been selected using
functional approach. The goal is to test the different functional requirements, as specified
in the requirement document. Test cases have been selected for both Valid as well as
Invalid Input.
8. SCREEN SHOOTS
Index/Home page
User Registration page
User Login Page
User Home Page
User Profile Details
Change Password
User Course Enroll Page

Online Exam
Select Module
Guide Line for Quiz
Quiz Questions
9. CONCULSION
We have successfully designed and developed a project on E – Learning. Working on the
project was good experience. This project is designed for “Online Education”. This project is
designed in JSP(Java Server Pages) which runs on Apache Tomcat Web Server.

Keeping in view these facts we have developed successfully. Developing the project has
helped us some experience on website development.

10. LIMITATIONS
Some of the Liminations of this project are

 The questions have to be written to the database directly


 There is no facility for multiple choice questions
 There is no facility for subjective answers
 There is no chat facility which allows the student to interact with the lecturer
directly

11. FURTHER ENHANCEMENT


Further enhancements to this project will be to create a module for entering the questions
to the database. As of now, the questions are directly written into tables by the
administrator . Creating a computerized module for it may help entry without mistakes.
Another enhancement would be to allow multiple choice questions and subjective
questions.This would allow many varieties of questions to be added. The tutorials can be
made available in flash format and other animated formats.

12. REFERENCES

 JAVAServer Pages - By: SAMS ,Techmedia.


 Javascript - By: Ivan Bayross
 HTML Complete - By: Sybex Authors
 System Analysis & Design - By: Ilias M Awad
 Software Engineering A Practitioner’s Approach - By: Roger S Pressman
 W3Schools – www.w3shools.com
 JSP Tutorials - www.visualbuilder.com/jusp/tutorial/
Table of Contents
1. INTRODUCTION ................................................................................................................................. 1
1.1 About the project ........................................................................................................................ 1
1.2 Purpose of the project ................................................................................................................ 1
1.4 Tools/Environment Used ............................................................................................................ 2
2. SOFTWARE DESCRIPTION.................................................................................................................. 2
2.1 Apache Tomcat Server ................................................................................................................ 2
2.2 Operating System – Windows XP................................................................................................ 3
2.2.1 Universality .......................................................................................................................... 3
2.2.2 Support................................................................................................................................. 3
2.2.3 Software ............................................................................................................................... 3
2.2.4 Memory Use......................................................................................................................... 3
2.2.5 Driver Availability ................................................................................................................. 4
2.2.6 WLAN features ..................................................................................................................... 4
2.2.7 System Restore and Device Driver Rollback ........................................................................ 4
2.2.8 Remote Desktop and Remote Assistance ............................................................................ 5
2.2.9 Client firewall ....................................................................................................................... 6
2.3 Microsoft Access Database ......................................................................................................... 6
2.3.1 Features ............................................................................................................................... 7
3. SYSTEM DEVELOPMENT LIFE CYCLE .................................................................................................. 8
4. REQUIREMENT ANALYSIS PHASE .................................................................................................... 10
4.1 Feasibility study ........................................................................................................................ 10
4.1.1 Technical Feasibility-: ......................................................................................................... 10
4.1.2 Economical Feasibility-:...................................................................................................... 10
4.1.3 Operational Feasibility-: ..................................................................................................... 10
5. ER-DIAGRAM ................................................................................................................................... 11
5.1 ER-Diagram ............................................................................................................................... 11
5.2 Class Diagram ............................................................................................................................ 11
5.3 Table Structure.......................................................................................................................... 12
6. CODING ........................................................................................................................................... 16
7. TESTING ........................................................................................................................................... 88
7.2 Test Case Specification for System Testing ............................................................................... 89
8. SCREEN SHOOTS.............................................................................................................................. 90
9. CONCULSION ................................................................................................................................. 108
10. LIMITATIONS ............................................................................................................................... 102
11. FURTHER ENHANCEMENT ........................................................................................................... 102
12. REFERENCES ................................................................................................................................ 109

Vous aimerez peut-être aussi