我是一个新手,最近在研究JSP,由于我对HTML语言理解有限,所以在编写时遇到了如下问题,请求大家帮我解决一下。问题出现在使用FORM表单上。我使用了一个单选框,可是为什么无法从第一个页面读取到用户的选择信息呢?
在运行中没有报错,只是第二个页面是空的。也就是说没有从数据库中读取到任何东西显示出来!而我确定我的数据库是有东西的!也就是第二个JSP网页的String title = request.getParameter("title");有问题!
请求大家帮忙解决一下,也许问题出现在另外的地方。
(我在我认为比较容易错的语句前加上“***”,因为我不知道在这里怎么编辑自己的问题是之变为粗体或者彩色,大家将就一下吧,代码写的很乱,见谅)--------------------------myarticle.jsp------------------------------------
<%@page contentType="text/html"%>
<%@ page language="java" import="java.sql.*" %>
<link href="blog.css" rel="stylesheet" type="text/css" /><html>
<head><title>Ocanell's Blog</title></head>
<body>
<h1 align="center" class="blog">Edit Panel</h1><p>
<table>
<tr><td><A href="addarticle.jsp">Add</td></tr>
</table>
<%
Class.forName("com.mysql.jdbc.Driver");
Connection myConn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/weblog", "ocanell", "132150521");
java.sql.Statement stmt = myConn.createStatement();
String query="select * from myarticle";
ResultSet myResultSet = stmt.executeQuery(query);
if (myResultSet != null) {
%>
***<form action="editarticle.jsp" method=POST>
<%
while (myResultSet.next()) {
// specify the field name
String headline = myResultSet.getString("headline");
String date = myResultSet.getString("date");
%>
<table align="left" class="blog">
<tr>
***<td><input type=radio name=title><%= headline %><br></td>
<td><b><%= date %><br></b></td>
<td><A href="">Del<br></a></td>
</tr>
</table> <P>
<%
}
%>
<input type=submit value="Edit">
</form>
<%
} stmt.close(); myConn.close();
%> </body>
</html>
-------------------------------editarticle.jsp----------------------------
<%@page contentType="text/html"%>
<%@ page language="java" import="java.sql.*" %>
<html><head><title>Edit News</title></head>
<%@ include file="banner.jsp"%>
<center>
<h2>EDIT doesn't work yet!</h2>
</center>
<%
***String title = request.getParameter("title");
Class.forName("com.mysql.jdbc.Driver");
Connection myConn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/weblog", "ocanell", "132150521");
java.sql.Statement stmt = myConn.createStatement();
***String query="select * from myarticle where headline = "+"'"+title+"'";
ResultSet myResultSet = stmt.executeQuery(query);
if (myResultSet != null) {
while (myResultSet.next()) {
// specify the field name
String body = myResultSet.getString("body");
String headline = myResultSet.getString("headline");
String date = myResultSet.getString("date");
%>
<form name='edit' action='editarticle2.jsp'>
<table border='1' align="center" class="blog">
<tr>
<td><b><%= headline %></b></td>
</tr>
<tr>
<td><b><%= date %></b></td>
</tr>
<tr>
<td><textarea name="body" rows='24' cols='50'><%= body %></textarea></td>
</tr>
</table>
<input type='submit' name='submit' value='OK'>
</form>
<br>
<%
}
} stmt.close(); myConn.close();
%>
<p> </p>
<p> </p>
<p> </p>
</body>
</html>
在运行中没有报错,只是第二个页面是空的。也就是说没有从数据库中读取到任何东西显示出来!而我确定我的数据库是有东西的!也就是第二个JSP网页的String title = request.getParameter("title");有问题!
请求大家帮忙解决一下,也许问题出现在另外的地方。
(我在我认为比较容易错的语句前加上“***”,因为我不知道在这里怎么编辑自己的问题是之变为粗体或者彩色,大家将就一下吧,代码写的很乱,见谅)--------------------------myarticle.jsp------------------------------------
<%@page contentType="text/html"%>
<%@ page language="java" import="java.sql.*" %>
<link href="blog.css" rel="stylesheet" type="text/css" /><html>
<head><title>Ocanell's Blog</title></head>
<body>
<h1 align="center" class="blog">Edit Panel</h1><p>
<table>
<tr><td><A href="addarticle.jsp">Add</td></tr>
</table>
<%
Class.forName("com.mysql.jdbc.Driver");
Connection myConn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/weblog", "ocanell", "132150521");
java.sql.Statement stmt = myConn.createStatement();
String query="select * from myarticle";
ResultSet myResultSet = stmt.executeQuery(query);
if (myResultSet != null) {
%>
***<form action="editarticle.jsp" method=POST>
<%
while (myResultSet.next()) {
// specify the field name
String headline = myResultSet.getString("headline");
String date = myResultSet.getString("date");
%>
<table align="left" class="blog">
<tr>
***<td><input type=radio name=title><%= headline %><br></td>
<td><b><%= date %><br></b></td>
<td><A href="">Del<br></a></td>
</tr>
</table> <P>
<%
}
%>
<input type=submit value="Edit">
</form>
<%
} stmt.close(); myConn.close();
%> </body>
</html>
-------------------------------editarticle.jsp----------------------------
<%@page contentType="text/html"%>
<%@ page language="java" import="java.sql.*" %>
<html><head><title>Edit News</title></head>
<%@ include file="banner.jsp"%>
<center>
<h2>EDIT doesn't work yet!</h2>
</center>
<%
***String title = request.getParameter("title");
Class.forName("com.mysql.jdbc.Driver");
Connection myConn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/weblog", "ocanell", "132150521");
java.sql.Statement stmt = myConn.createStatement();
***String query="select * from myarticle where headline = "+"'"+title+"'";
ResultSet myResultSet = stmt.executeQuery(query);
if (myResultSet != null) {
while (myResultSet.next()) {
// specify the field name
String body = myResultSet.getString("body");
String headline = myResultSet.getString("headline");
String date = myResultSet.getString("date");
%>
<form name='edit' action='editarticle2.jsp'>
<table border='1' align="center" class="blog">
<tr>
<td><b><%= headline %></b></td>
</tr>
<tr>
<td><b><%= date %></b></td>
</tr>
<tr>
<td><textarea name="body" rows='24' cols='50'><%= body %></textarea></td>
</tr>
</table>
<input type='submit' name='submit' value='OK'>
</form>
<br>
<%
}
} stmt.close(); myConn.close();
%>
<p> </p>
<p> </p>
<p> </p>
</body>
</html>
解决方案 »
- Spring配置文件问题 ssh框架我加入了AOP日志后,启动出现异常
- 哪位能提供一个tomcat下面能用的jfreechart的例子给我啊,谢谢!
- org.apache.commons.dbcp.SQLNestedException
- 问一个jsp页面跳转问题,求教
- 做了一个applet,打包后不能访问包中的资源!?求解
- 什么是静态对象和静态对象。。麻烦解释一下
- from表单加入enctype="multipart/form-data"这个属性服务器上项目就会报错问题 求帮助
- JSP中JAVABEAN要不要序列化
- 如何得到客户端的ip地址,而不是机器名!
- 如何在tomcat启动的时候装载数据
- hibernate为什么找不到org.apache.commons.lang包
- 小弟遇到了select的问题,怎么办?
果然是html 不熟悉这样改<input type=radio name=title ><%= headline %><br>改成<input type=radio name=title value="<%=headline%>"><%= headline %><br>
问题如你所预料,是这样的。多谢!