DaniWeb IT Discussion Community

DaniWeb IT Discussion Community (http://www.daniweb.com/forums/index.php)
-   JSP (http://www.daniweb.com/forums/forum24.html)
-   -   Problem inserting data into database (http://www.daniweb.com/forums/thread54739.html)

sheetaljagwani Sep 10th, 2006 6:17 pm
Problem inserting data into database
 
Hi,
I am trying to make a simple jsp program which eneters data eneterd by user in an html form called main.html.
This is the code for main.html
[code]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Benthic_query </TITLE>
</HEAD>
<BODY>
<form METHOD = POST ACTION="dataConnection.jsp">
Enter the name of the new table: <input type = text name = table_name size= 30>
<br>
Enter the number of the table: <input type = text name=table_number size=10>
<p> <input type = Submit>
</BODY>
</HTML>

And here is the code for dataConnection:

[code]
<%@ page import="java.sql.*" %>
<%@ page import="javax.servlet.*" %>
<%@ page import="javax.servlet.http.*" %>
<%
Connection conn = null;
try
{
String query = "insert into benthic_query values('"+name+"', '"+number+"')";
String userName = "root";
String password = "abc";
String url = "jdbc:mysql://localhost/test";
String name= request.getParameter("table_name");
String number = request.getParameter("table_number");

Class.forName ("com.mysql.jdbc.Driver").newInstance(); //Loading the driver
conn = DriverManager.getConnection(url, userName, password); //connect the appropriate driver to the database
System.out.println("Connection opened successfully");
Statement stmt = conn.createStatement (); //Statement object sends the SQL statement to the DBMS
stmt.executeUpdate ("query"); //executeQuery will return back some rows, executeUpdate does not return any rows

stmt.close();
System.out.println("Connection opened successfully");
}
catch (Exception e)
{
System.err.println("Cannot connect to the database");
}
finally
{
if(conn != null)
{
try
{
conn.close();
System.out.println("Database connection closed successfully");
}
catch (Exception e)
{
}
}
}

// response.sendRedirect("success.htm");
%>
<html>
<body>
<p> <a href = "thanks.html">CONTINUE </a> </p>
</html>
</body>

And I am getting the following error as soon as I hit the submit button in main.html


exception org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 7 in the jsp file: /sjagwani/dataConnection.jsp
Generated servlet error:C:\Jakarta\jakarta-tomcat-5.0.28\work\Catalina\localhost\_\org\apache\jsp\sjagwani\dataConnection_jsp.java:58:
cannot find symbol
symbol : variable name
location: class org.apache.jsp.sjagwani.dataConnection_jsp
String query = "insert into benthic_query values('"+name+"', '"+number+"')";
^An error occurred at line: 7 in the jsp file: /sjagwani/dataConnection.jspGenerated servlet error:C:\Jakarta\jakarta-tomcat-5.0.28\work\Catalina\localhost\_\org\apache\jsp\sjagwani\dataConnection_jsp.java:58: cannot find symbol
symbol : variable number
location: class org.apache.jsp.sjagwani.dataConnection_jsp
String query = "insert into benthic_query values('"+name+"', '"+number+"')";
^2errors
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332) org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412) org.apache.jasper.compiler.Compiler.compile(Compiler.java:472) org.apache.jasper.compiler.Compiler.compile(Compiler.java:451) org.apache.jasper.compiler.Compiler.compile(Compiler.java:439) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802)Can someone please tell me where am I going worng.Thanks,

harpalshergill Dec 5th, 2006 5:31 pm
Re: Problem inserting data into database
 
Hi
Did you find out the solution about how to enter the integer or datetime values from HTML form data???
If yes then please let me know what you did!!!

thanks

techkar Dec 7th, 2006 12:17 am
Re: Problem inserting data into database
 
Hi

It shows that the variables number and name are undefined,So place the

String name= request.getParameter("table_name");
String number = request.getParameter("table_number");

before

String query = "insert into benthic_query values('"+name+"', '"+number+"')";


Regards,

harpalshergill Dec 8th, 2006 11:20 am
Re: Problem inserting data into database
 
Any idea about inserting DateTime format from form feils which is a string to an ORALCLE Database??

jwenting Dec 8th, 2006 4:37 pm
Re: Problem inserting data into database
 
You do I hope realise that it's very bad practice to do such things in a JSP?

Send the form submit to a servlet and do it there, then send the result of that operation back to a JSP for display.


All times are GMT -4. The time now is 4:28 am.

Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC