1、say.html
<center>
<form action="process.jsp" method="post">
<table bgcolor="#B3B3FF">
<caption>欢迎访问留言板</caption>
<tr>
<td>用户名:</td>
<td><input type="text" name="name1"></td>
</tr>
<tr>
<td>主题:</td>
<td><input type="text name="title" size="40"></td>
</tr>
<tr>
<td>内容:</td>
<td>
<textarea name="content" rows="10" cols="40"></textarea>
</td>
</tr>

<tr>
<td><input type="submit" value="提交"></td>
<td><input type="reset" value="重填"></td>
</tr>
</table>
</form>
</center>
2、process.jsp
<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="java.sql.*,javax.sql.*,javax.naming.*" %>
<%@ include file="util.jsp" %><%
request.setCharacterEncoding("GBK");
//我在say.html页面把name1,title,content的内容都输入了,然后提交就直接重定向到say.html了
String name1=request.getParameter("name1"); //这个地方接收到空值
String title=request.getParameter("title"); //这个地方接收到空值
String content=request.getParameter("content"); //这个地方也接收到空值

if(null==name1 || null==title || null==content) //这个判断为true
{
response.sendRedirect("say.html"); //执行到这儿就是下一行的return,为什么????
return;
}

name1=toHtml(name1.trim());
title=toHtml(title.trim());
if(name1.equals("") || title.equals(""))
{
response.sendRedirect("say.html");
return;
}
content=toHtml(content.trim());
String fromIP=request.getRemoteAddr();

Context ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/bookstore");
Connection conn=ds.getConnection();

PreparedStatement pstmt=conn.prepareStatement(
"insert into guestbook(gst_user,gst_title,gst_content,gst_ip) values(?,?,?,?)");
pstmt.setString(1,name1);
pstmt.setString(2,title);
pstmt.setString(3,content);
pstmt.setString(4,fromIP);

pstmt.executeUpdate();
pstmt.close();
conn.close();
response.sendRedirect("index.jsp");
%>