Ciao a tutti, vi scrivo perchè ho iniziato da poco a sviluppare in ambiente web e sto riscontrando particolari difficoltà nella validazione dei dati di un form. Volevo fare una semplice schermata di login appoggiandosi ad un database e volevo utilizzare AJAX per la verifica circa la disponibilità dell'email inserita dall'utente (verificando quindi che non sia già registrato). Premetto che non posso usare PHP per motivi didattici, ho provato a usare Javascript, JQUERY, JSP e servlet ma riscontro sempre problemi!
Questo è il codice JSP
codice HTML:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%@page import="java.sql.*,java.util.*"%>
<% String email_field=request.getParameter("email_field");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/boxit", "root", "");
Statement statement = con.createStatement() ;
ResultSet resultset = statement.executeQuery("select email from boxer where email='"+email+"'");
if(!resultset.isBeforeFirst()) {
out.print("yes");
}
else{
out.print("no");
}
}
catch(Exception e)
{
System.out.print(e);
e.printStackTrace();
}
%>
</body>
</html>
E quà c'è lo script in AJAX (usando JQUERY):
codice HTML:
$(document).ready(function(){
$("#email_field").blur(function(){
var email_field = $("#email_field").val();
$.ajax({
url: "userValidate.jsp",
type: "POST",
data: "email_field="+ email_field,
success: function(server_response){
if(server_response == "yes"){
$("#email_field").notify("Ok.", "success");
}
else if(server_response == "no"){
$("#email_field").notify("Effettua il Login, sei già registrato.", "error");
}
}
});
return false;
});
});
Qualcuno mi può aiutare? In caso la sezione sia errata chiedo scusa!