
Hii.. I have to design one registration page in java that looks like
REGISTER
USERNAME (here i have to check whether username already exists in database) EMAIL ADDRESS (here i have to check whether email address already exists in database) PASSWORD
WORD SUGGESTIONs (here i have to design captcha)
submit (while clicking on submit button i have to send verification mail to the user)
please tell me how could i design that. Please help me asap Thanks a lot

CreateUser.java: package saar.etisalat.dao;
import java.io.*;
import java.sql.CallableStatement; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession;
import saar.etisalat.Conn;
public class CreateUser extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
/**
* Constructor of the object.
*/
public CreateUser() {
super();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
Connection connection = null;
PreparedStatement preparedStatement = null;
CallableStatement callableStatement = null;
ResultSet resultSet = null;
ResultSet resultSet1 = null;
connection = Conn.openConnection();
String userName = request.getParameter("name");
String fullName = request.getParameter("fullname");
String password = request.getParameter("pass");
String roleid = request.getParameter("sel");
HttpSession session = request.getSession();
String sessionUserName = (String) session.getAttribute("sessionUser");
String userId = null;
String query = null;
String dbusername = null;
try {
preparedStatement = connection
.prepareStatement("select user_name from user_details where user_name=?");
preparedStatement.setString(1, userName);
System.out.println(userName);
resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
dbusername = resultSet.getString("user_name");
System.out.println(dbusername);
}
if (dbusername == null) {
System.out.println("in if");
query = "{call user_create(?,?,?,?,?,?,0)}";
callableStatement = connection.prepareCall(query);
callableStatement.setString(1, userName);
callableStatement.setString(2, fullName);
callableStatement.setString(3, roleid);
callableStatement.setString(4, password);
callableStatement.setString(5, sessionUserName);
callableStatement.setString(6, sessionUserName);
resultSet1 = callableStatement.executeQuery();
session.setAttribute("name", userName);
if (session.getAttribute("name") != null) {
response.sendRedirect("CreateUser.jsp");
}
} else if (resultSet != null) {
System.out.println("in else");
session.setAttribute("resultSetuser", resultSet);
if (session.getAttribute("resultSetuser") != null) {
response.sendRedirect("CreateUser.jsp");
}
}
} catch (SQLException sqlException) {
sqlException.printStackTrace();
} finally {
Conn.closeConnection(resultSet, callableStatement, connection);
}
}
}
CreateUser.jsp: <%@ page language="java" import="java.util.,saar.etisalat.,java.sql.*,saar.etisalat.Conn" pageEncoding="ISO-8859-1"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; String name=request.getParameter("name"); %>
<%! Connection connection = null; PreparedStatement preparedStatement = null,preparedStatement1 =null; ResultSet resultSet = null,resultSet1=null;%>
<% connection=Conn.openConnection();
try{
preparedStatement = connection
.prepareStatement("select distinct role_name ,role_id from role order by role_name");
resultSet = preparedStatement.executeQuery();
%>
<p><table style="margin-top : 100px" align="center" border=0>
<form name="f1" action="CreateUser" method="post" onsubmit="return valid();">
<%if(session.getAttribute("name")!=null)
{%>
| CREATE USER | ||
|
| ||