• Tidak ada hasil yang ditemukan

AuthenCheck2Java

Dalam dokumen Fără titlu. (Halaman 64-101)

Module 3

Codes for insertion and manipulation question in Exams tables questiondata.html

<HTMl>

<HEAD>

<TITLE >lOGIN </TiTlE> </HEAD>

< BODY> < FORMACTION= http://localhost: SOSO/Sohebl/servlet/ AuthenCheck2 METHOD=POST>

<H3>Please enter login name and identification number.</H3><BR>

<PRE>

Name: <INPUT TYPE=text NAME=Name>

ID: <INPUT TYPE=text NAME=ID>

</PRE>

<INPUT TYPE=SUBMIT value=Submit>

< I NPUT TYPE= reset>

</FORM>

</BODY>

</HTMl>

super.init( config);

conn=null;

stmt=null;

}

public void doPost(HttpServletRequest req,HttpServletResponse res) throws IOException

{

int i=O,exams=O,examno=O;

PrintWriter output;

/ /Tname for holding Teacher Name and Tid for holding Teacher ID String Tname="It,Tid="";

Tname= req .getParameter("Name");

if(Tname==null) Tname=Tname+"@";

Tid = req .getParameter("ID");

if(Tid==null) Tid=Tid+"@";

String stl,st2;

boolean identification=false;

try {

DriverManager. reg isterDriver (new oracl e.jd bed river. OracleDriver());

conn =

DriverManager.getConnection("jdbc: oracle :thin:@netvista103: 1521:soh9i 1",Tname, Tid);

stmt = conn.createStatement ();

rset = stmt.executeQuery ("select D.

*

from dual D");

identification =true;

rset. close() ;stmt.c1ose();

}catch(Exception sqlex) {

output= res.getWriter();

res.setContentType("text/html") ;

output.println("<H2>Check following errors</H2>");

output. println(sqlex);

output.c1ose() ; }

if (identification) {

Cookie c1=new Cookie("Tname",Tname);

c1.setMaxAge( -10);

Cookie c2=new Cookie("Tid",Tid);

c2.setMaxAge( -10);

res.addCookie( c1);

21

res.addCookie(c2) ; try

{

stmt = conn.createStatement();

rset = stmt.executeQuery("SElECT T.* FROMTEACHERT");

rset.next() ;

exa mno= rset.getlnt(" Exams");

rset.c1ose() ;stmt.close();

}catch(Exception sqlex){}

output= res.getWriter();

res.setContentType("text/html") ; String Buffer buf=new StringBuffer();

buf.append (" < HTMl> < HEAD><TITLE>");

buf.append("Question Manipulation Page");

buf.a ppend(" </TITlE> </HEAD> < BODY>");

buf.append(" < FORMACTION= http://netvista 103: 8080/Soheb l/servlet/Question Data METHOD=POST>");

buf.append("<BR>"+"<H3>Please Choose an Exam</H3>");

for(int j=O;j <examno;j++) {

buf.append("<INPUT TYPE=radio NAME=Examname VAlUE=Exam"+(j+ 1)+"

CHECKED>"+"Examination"+ (j+ 1)+"<BR>");

}

buf.append("<BR><BR>"+"<H4>**For Deletion, question No. Required only**</H4>");

buf.append("Question No.(Integer)"+" "+"<INPUT TYPE=text NAME=questno>");

buf.append("<BR><BR>"+"Enter Question (String)");

buf.append("<p><textarea rows= 7 name=Quest cols=80></textarea > </p>");

for(i=0;i<4;i++ ) {

buf.append("<BR>"+"Enter Answer"+(i+l)+" (String)"+" ");

buf.append("<INPUT TYPE=TEXTNAME=Ans"+(i+l)+" SIZE=80>");

}

buf.a ppend(" < BR>" +" Enter Correct Answer No.(Integer)");

buf.append("<INPUT TYPE=text NAME=Rightans>"+"<BR> < BR>");

buf.append(" <INPUT TYPE=Submit name=Student Value=Enter>");

buf.append("<INPUT TYPE=Submit name=Student Value=Delete>");

buf.append("<INPUT TYPE=Submit name=Student Value=AIIQuestion>");

buf.append("<INPUT TYPE=Submit name=Student Value=Exit>");

buf.a ppend(" </FORM> </BODY> </HTMl> ");

output. println( buf.toString(»;

output.close() ;

} }

public void destroy() {

try {

conn.close();

}catch(Exception e) {System.err.println("Problem closing the database");}

} }

QuestionData.java

import java.sql.*;

import javax.swing. *;

import oracle.sql. *;

import java.io. *;

import javax.servlet. *;

import javax.servlet.http. *;

import java.util. *;

import oracie.jdbc.driver. *;

IIQuestionData will be used to insert questions in the Examl, ,Examn Tables.

public class QuestionData extends HttpServlet {

Connection conn;

Statement stmt;

ResultSet rset;

public void init(ServletConfig config) throws ServletException {

super. init( config);

}

public void doPost(HttpServletRequest req,HttpServ/etResponse res) throws IOException

{

PrintWriter output;

Cookie cookies[]=null;

cookies= req .getCookies();

II Tname=Teacher Name,Tid=Teacher ID,questno=Question NO., question=Question, ansi =Answerl.. ...

Ilsurf=Option (Enter, Delete, All Questions, Exit), exam= Exam Name String Tname="" ,Tid ='''' ,questno= null ,quest= null,ans I =null,ans2 = null, ans3 = null,a ns4= null,surf= null,exam= nuil;

int examno=O,qno=O;

exa m= req .getParameter("Examname");

questno= req .getParameter("questno");

q uest= req .getParameter("Quest");

ansI =req.getParameter("Ansl ");

ans2 = req .getparameter("Ans2");

ans3 = req .getParameter("Ans3");

ans4=req .getParameter("Ans4");

String rightans= req .getPara meter("Rightans");

if (cookies! =nul/) {

for (int i=O;i<cookies.iength;i++) {

Cookie cookie = nul/;

cookie=cookies[l] ;

if( (cookie.getName()) .equa!s("Tname")) Tname=cookle.getValue();

If( (cookie.getName()) .equals("Tid")) Tid =cookie.getValue();

} } try {

DriverMa nager. reg IsterDriver( new oracle .jd be.driver. OracleDriver());

conn =

DriverManager.getConnectlon("jdbc: oracle :thin:@netvistal03: 1521 :soh9i 1",Tname, Tid);

stmt = conn.createStatement();

rset = stmt.executeQuery("SELECT T.

*

FROMTEACHERT");

rset. next();

exa mno= rset.getlnt(" Exams");

rset.close() ;stmt.close();

}catch(Exception sqlex){}

If( req .getPa rameter("Student") .equals("Enter")) surf= "Enter";

if( req .getParameter("Student") .equals("Delete")) surf="Delete";

if( req .getParameter("Student") .equals("AliQuestion")) SUrf="AI/Question";

if( req .getParameter("Student") .equa Is("Exit")) surf= "Exit";

if (surf.equals("Exit")) {

output= res.getWriter();

res.setContentType("text/html") ; StringBuffer buf=new StringBuffer();

buf.append(" < HTML> < HEAD> <TITLE>");

buf.a ppend(" </TITLE> </HEAD > < BODY>");

25

buf.append("<FORM

ACTION= http://netvista 103 :808 O/Soheb1/ servlet/ AuthenCheck2 METHOD=POST>");

buf.append("<H3>Please enter login name and identification number.</H3><BR>");

buf.append("Name: "+"<INPUT TYPE=text NAME=Name><BR>");

buf.append("ID:"+" <INPUT TYPE=text NAME=ID><BR>");

buf.append("<INPUT TYPE=Submit Value=Submit>");

buf.append("<INPUT TYPE=Reset>");

buf.append(" </FORM > </BODY> </HTML>");

output. println( buf. toString(»;

output.close() ; )

if (surf.equals("Enter"»

{

/ / For entering new question try

{

qno= Integer. parseInt( questno);

stmt = conn.createStatement();

rset = stmt.executeQuery("INSERT INTO

"+ exa m +" (No,Quest,Ans 1,Ans2, Ans3,Ans4,Correct)

VALUES(" +qno+", '"+quest+ "',,It+ans 1+ "','"+a ns2+ "',III+ans3+ "', '" +ans4+ "','"+right ans+"')");

rset.close() ;stmt.close();

stmt = conn.createStatement();

rset = stmt.executeQuery("COMMIT");

output= res.getWriter();

output. println (" <H2 > Inserted Successfully</H2 >");

res. setContentType("text/html");

String Buffer buf=new String Buffer() ; buf.append (" < HTML> < HEAD><TITLE>");

buf.a ppend("Insertion Creation Page");

buf.append (" </TITLE> </HEAD > < BODY>");

buf.append("<FORM

ACTION= http://netvista 103: 8080/Soheb 1/ servlet/ AuthenCheck2 METHOD=POST>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.append("<BR><INPUT TYPE=Submit Value=More>"+" <BR>");

buf.a ppend (" </FORM > </BODY> </HTML> ");

output.println( buf.toString(»;

output.close() ;

rset.closeC) ;stmt.c1oseC);

}catchCException sqlex) {

output= res.getWriterC);

output.printlnC"<H2 >Check following errors</H2>");

output. println Csqlex);

res.setContentTypeC"text/html") ; String Buffer buf=new StringBuffer();

buf.appendC" < HTML> < HEAD> <TITLE >");

buf.appendC"Table Creation Page");

buf.append C"</TITLE> </HEAD > < BODY>");

buf.appendC" <FORM

ACTION = http://netvista 103: BOBO/Soheb 1/ servlet/ AuthenCheck 1 METHOD=POST>");

buf.appendC"<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.appendC"<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.appendC"<BR><INPUT TYPE=Submit Value=Back>"+"<BR>");

buf.appendC" </FORM > </BODY> </HTML> ");

output. printlnCbuf.toStringC»;

output.closeC) ; }

}

if Csurf.equalsC"Delete"»

{

/ / For deletion of question try

{

qno= Integer. parseIntC questno);

output= res.getWriterC);

res.setContentTypeC"text/html") ; String Buffer buf=new StringBuffer();

buf.append C"< HTML> < HEAD> <TITLE> ");

buf.appendC"Deletion Creation Page");

buf.append C"</TITLE> </HEAD > < BODY>");

buf.appendC" <FORM

ACTION = http://netvista 103: BOBO/Sohebl/servlet/DeleteQuestion METHOD=POST>");

buf.appendC"<INPUT TYPE=radio NAME=Answer VALUE=AII>"+"AII"+"<BR>");

forCint j=0;j<4;j++) {

buf.appendC" <INPUT TYPE=radio NAME=Answer VALUE=Ans"+Cj+ 1)+"

CHECKED>"+"Answer"+Cj+ 1)+"< BR>");

}

buf.append("<INPUT TYPE=radio NAME=Answer VAlUE=Correct" +"

CHECKED>"+"Corr. Ans."+"<BR>");

buf.append("<BR>New Value for insertion (Default is null)<BR>");

buf.append("<INPUT TYPE=TEXT NAME=New sIZE=80>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VAlUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VAlUE="+ Tname+" >");

buf.append("<INPUT TYPE=HIDDEN NAME=questno VAlUE="+questno+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Examname VAlUE="+exam+">");

buf.append(" <BR> < BR> <INPUT TYPE=submit Value= Done>"+"<BR>");

buf.append (" </FORM > </BODY> </HTML>");

output. println(buf. tostring());

output.c1ose() ;

}catch(Exception sqlex) {

output= res.getWriter();

output.println("<H2>Check following errors</H2 >");

output. println(sqlex);

res.setContentType("text/html") ; String Buffer buf=new stringBuffer();

buf.append (" < HTMl> < HEAD><TITLE>");

buf.append("Table Creation Page");

buf.append(" </TiTlE > </HEAD > < BODY>");

buf.append (" < FORM

ACTiON = http://netvista 103: 8080/sohebl/servlet/ AuthenCheck2 METHOD=POsT>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VAlUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VAlUE="+ Tname+">");

buf.append(" <BR><INPUT TYPE=submit Value=Back>"+"<BR>");

buf.a ppend(" </FORM > </BODY> </HTMl> ");

output. println(buf.tostring());

output.close() ; }

}

if (surf.equals("AIiQuestion")) {

try {

/ / will show all question

stmt = conn .createstatement ();

rset = stmt.executeQuery("select

*

FROM"+exam+" where No<lOOOO");

output= res.getWriter();

27

res.setContentType("text/html") ; StringBuffer buf=new StringBuffer();

buf.append(" < HTML>< HEAD><TITLE >");

buf.append("Student Information Page");

buf.a ppend(" </TITLE> </HEAD > < BODY>");

buf.append(" <FORM

ACTION= http://netvista 103: 8080/Soheb1/servlet/ AuthenCheck2 METHOD=POST>");

while (rset.next()) {

String temp="";

buf.append("Q" + rset.getInt( 1)+") ");

temp= rset.getString (2);

if(temp= =null) temp="N/ A";

buf.append (temp+" < BR>");

for(int i=3;i<=6;i++) {

temp="";

temp= rset.getString( i);

if(temp= =null) temp="N/ A";

buf.append("Ans"+(i-2)+") "+temp+" < BR>");

}

temp= rset.getString(7);

if(temp==null) temp="Correct - N/A";

else temp="Correct - Ans"+temp;

buf.append (temp+" < BR>");

buf.append(" <BR>");

}

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.append(" <BR> <BR><INPUT TYPE=Submit Value=Back>"+" <BR>");

buf.a ppend(" </FORM > </BODY > </HTML>");

output. println( buf.toString());

output.c1ose() ;

rset.close() ;stmt.close();

}catch(Exception sqlex) {

output= res.getWriter();

output.println("<H2>Check following errors</H2>");

output.printin(sqlex) ;

res.setContentType("text/html") ;

String Buffer buf=new StringBuffer();

buf.append(" < HTML> < HEAD> <TITLE> ");

buf.append("Table Creation Page");

buf.append(" </TITLE> </HEAD> < BODY>");

buf.append("<FORM

ACTION= http://netvista 103: 8080/Soheb l/servlet/ AuthenCheck2 METHOD=POST>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+Tname+">");

buf.append("<BR><INPUT TYPE=Submit Value=Back>"+"<BR>");

buf.append(" </FORM > </BODY> </HTM L>");

output. printin (buf.toString ());

output.close() ; }

} } }

DeleteQuestion.java

import java.sql. *;

import javax.swing.*;

import oracle.sql. *;

import java.io. *;

import javax.servlet. *;

import javax.servlet.http. *;

import java.util. *;

import oracle.jdbc.driver. *;

// DeleteQuestion will delete and manipulate questions in the Examl, .... ,Examn _ Tables

public class DeleteQuestion extends HttpServlet {

Connection conn;

Statement stmt;

ResultSet rset;

public void init(ServletConfig config) throws ServletException {

super.init( config);

}

public void doPost(HttpServletRequest req,HttpServietResponse res) throws IOException

{

29

PrintWriter output;

Cookie cookies[J=null;

cookies= req.getCookies();

// Retrieving Teacher Name, ID, Exam Name, Question No etc.

String Tname="" ,Tid ="" ,option = "" ,exam =n ull,newval = null;

int questno=O;

questno= Integer. parseInt( req .getParameter("questno"));

option = req .getParameter(" Answer");

//option holds particular columns identification for removing exam = req .getParameter("Examna me");

newval = req .getPara meter("New");

try {

q uestno= Integer.parseInt(req .getPara meter("q uestno"));

}catch(NumberFormatException e) {

output= res.getWriter();

output.println(" <H2>Check following errors</H2>");

output. println (e);

res.setContentType("text/html") ; String Buffer buf=new StringBuffer();

buf.append(" < HTML> < HEAD> <TITLE>");

buf.append("Table Creation Page");

buf.a ppend(" </TITLE > </HEAD > < BODY>");

buf.append(" <FORM

ACTION =http://netvista 103: 8080/Sohebl/servlet/ AuthenCheck2 METHOD=POST>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.append("<BR> <INPUT TYPE=Submit Value=Back>"+" <BR>");

buf.append(" </FORM > </BODY > </HTML> ");

output. println (buf.toString());

output.close() ; }

if (cookiesl =null) {

for (int i=O;i<cookies.length;i++) {

Cookie cookie = null;

cookie=cookies[i] ;

if( (cookie.getNa me()) .equals("Tna me")) Tna me=cookie.getValue();

if( (cookie.getName()) .equals("Tid")) Tid =cookie.getValueO;

31

} }

if( option.equals("AII"»

{

/ / For deletion of the full record of a particular question try

{

DriverManager. reg isterDriver( new oracle .jd be.driver. OracleDrive r(» ; conn=

DriverManager.getConnection ("jdbc: oracle :thin:@netvista103: 1521: soh9i 1",Tname, Tid);

stmt = conn.createStatement();

rset = stmt.executeQuery("DElETE FROM"+exam+" WHERENo="+questno+" AND No<10000");

rset.close() ;stmt.close();

stmt = conn.createStatement();

rset = stmt.executeQuery("COMMIT");

output= res.getWriter();

output.println("<H2>Deleted Successfully (Also shows Deleted when no match found)</H2>");

res. setContentType( "text/html");

String Buffer buf=new StringBuffer();

buf.a ppend(" < HTMl> < HEAD><TITLE>");

buf.append("Insertion Creation Page");

buf.append (" </TITlE> </HEAD > < BODY>");

buf.append("<FORM

ACTION= http://netvista 103: 8080/Soheb 1/ servlet/ AuthenCheck2 METHOD=POST>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VAlUE="+ Tid+" >");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VAlUE="+Tname+">");

buf.append("<BR> <INPUT TYPE=Submit Value=More>"+"< BR>");

buf.append (" </FORM > </BODY > </HTMl>");

output. println( buf.toString(»;

output.c1ose() ;

rset.close() ;stmt.c1ose() ;conn .close();

}catch(Exception sqlex) {

output= res.getWriter();

output.println(" <H2 >Check following errors</H2 >");

output. println(sqlex);

res.setContentType("text/html") ; String Buffer buf= new String Buffer();

buf.append("<FORM

ACTION= http://netvista 103: BOBO/Soheb l/servlet/ Authen Check2 METHOD=POST>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.append("<BR> <INPUT TYPE=Submit Value=Back>"+"<BR>");

buf.append (" </FORM > </BODY > </HTM L>");

output. println( buf.toString());

output.close();

} } else { try {

/ / For deletion based on user option

DriverManager. registerDriver(new oracle.jdbc.driver.OracleDriver());

conn =

DriverManager.getConnection("jdbc: oracle :thin:@netvista103: 1521 :soh9i 1",Tna me, Tid);

stmt = conn.createStatement();

rset = stmt.executeQuery("UPDATE "+exam+" SET "+option+"="'+newval+'"

WHERE NO="+Questno+" AND No< 10000");

rset.close() ;stmt.close();

stmt = conn.createStatement();

rset = stmt.executeQuery("COMMIT");

output= res.getWriter();

output.println("<H2>Deleted Successfully (Also shows Deleted when no match found)</H2>");

res. setContentType( "text/html") ; StringBuffer buf=new StringBuffer();

buf.append(" < HTML> < HEAD> <TITLE>");

buf.append("Insertion Creation Page");

buf.append (" </TITLE> </HEAD> < BODY>");

buf.append(" <FORM

ACTION= http://netvista 103: BOBO/Soheb1/servlet/ AuthenCheck2 METHOD=POST>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.append(" <BR> <INPUT TYPE=submit Value=More>"+"< BR>");

buf.a ppend(" </FORM > </BODY> </HTML>");

output. printl n(buf.tostring());

output.close() ;

rset.close() ;stmt.close();

}catch(Exception sqlex) {

output= res.getWriter();

output.println(" <H2>Check following errors</H2 >");

output. pnntln(sqlex);

res.setContentType( "text/html");

String Buffer buf=new stringBuffer();

buf.a ppend(" < HTML> < HEAD><TITLE>");

buf.append("Table Creation Page");

buf.append(" </TITLE> </HEAD > < BODY>");

buf.append("<FORM

ACTION=http://netvista 103: 8080/soheb1/servlet/ AuthenCheck2 METHOD=POsT>");

buf.append("<INPUT TYPE=HIDDEN NAME=ID VALUE="+ Tid+">");

buf.append("<INPUT TYPE=HIDDEN NAME=Name VALUE="+ Tname+">");

buf.append(" <BR><INPUT TYPE=submit Value=Back>"+" <BR>");

buf.append (" </FORM > </BODY> </HTML>");

output. println( buf.tostring());

output.close() ; }

} } }

33

Module 4

Codes for giving and evaluating examinations

exam.html

<HTMl>

<HEAD>

<TITLE> lOGIN </TITlE> </HEAD >

< BODY> < FORM ACTION= http://ahmed :8080/Sohebl/servlet/loginCheck METHOD=POST>

<PRE>

Name: <INPUT TYPE=text NAME=Name>

10: <INPUT TYPE=text NAME=ID>

</PRE>

<INPUT TYPE=SUBMIT value=Submit>

<INPUT TYPE=reset>

</FORM>

</BODY>

</HTMl>

LoginCheck.java

import java.io. *;

import javax.servlet. *;

import javax.servleLhttp. *;

import java.sql. *;

/ /loginCheck will check for valid user in the database public class loginCheck extends HttpServlet

{

Connection c;

Statement s;

ResultSet rs;

public void init(ServletConfig config) throws ServletException {

super.init( config);

}

public void doPost(HttpServletRequest req,HttpServletResponse res) throws Serv Iet Excepti on, 10Exce pti0n

{

35

int i=O,exams;

PrintWriter output;

String name=tI",id="";

name= req .getParameter("Name");

if(name==null) name=name+"@";

id = req .getParameter("ID");

if(id==null) id=id+"@";

String stl ,st2;

rs=null;

try {

DriverManager. registerDriver (new oracie.jd bc.driver.OracieDriver());

c

=

DriverManager.getConnection("jdbc: oracle :thin:@netvista103: 1521: soh9i 1", "scott"

,"tiger");

s

=

c.createSta tement( ResuItSet. TYPE_SCROLL_SENSITIVE,ResultSet. CONCUR_UPDAT ABLE);

rs=s.executeQuery("Select NAME,ID from Student");

}catch(Exception sqlex) {

output= res.getWriter();

res.setContentType("text/html") ;

output.println(" <H2>Check following errors</H2>");

output. println(sqiex);

output.close() ; }

//start of Block-1 try

{

rS.next();

/ /start of Block-2

/* variable i will hold the value whether a match is found or not.

name and id variable will read user's name and id. Every record in the database will be checked. If any record matches looping will be terminated. */

outer: do {

stl =rs.getString("ID");

st2 = rS.getString("NAME");

/ /name and id cookies will carry name and id of an user.

if (stl.equals(id) && st2.equals(name)) {

Dalam dokumen Fără titlu. (Halaman 64-101)

Dokumen terkait