我用JSP做了一个留言板,下面这个程序是显示留言的页面,可是有问题,我一直想不通,大家帮下忙了,可以连的上数据库,也可以把留言记录到数据库中,但就是无法显示留言页面
<html>
<title>留言板</title>
<body>
<%@page import="java.sql.*"%>
<%@page contentType="text/html;charset=GB2312"%>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con=DriverManager.getConnection("jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=GBK","root","505505");
Statement smt=con.createStatement();
ResultSet rs;
String sql;//count用来记录留言的次数,我是以每5个留言为一页,lastp为最后一页,pageno代表页码,prep为前一页,nextp为下一页,numf为此页第一个留言的编码,numl为此页最后一个编码
int count=0,lastp,numf,numl,prep,nextp,pageno;
if(request.getParameter("pageno")==null)
pageno=0;
else
pageno=Integer.parseInt(request.getParameter("pageno"));
sql="select * from message";
rs=smt.executeQuery(sql);
while(rs.next())
count++;
lastp=(int)Math.ceil((double)count/5);
if(pageno==0||pageno>lastp)
pageno=lastp;
numf=pageno*5-4;
numl=numf+4;
if(pageno==1)
prep=1;
else
prep=pageno-1;
if(pageno==lastp)
nextp=lastp;
else
nextp=pageno+1; //调试的时候提示说明是这里出错了
sql="select * from message where id between"+numf+"and"+numl;
rs=smt.executeQuery(sql);
%> <font color="green" size="7">留言板</font>
<hr>
<center>
<form action="board.jsp" method="post">
<table border="0">
<tr>
<td>目前页次: <font color="red"><%=pageno%></font>/
<font color="blue"><%=lastp%></font></td>
<td><a href=board.jsp?pageno=<%=prep%>>[上一页] </a></td>
<td><a href=board.jsp?pageno=<%=nextp%>> [下一页] </a></td>
<td><a href=board.jsp?pageno=1> [第一页] </a></td>
<td><a href=board.jsp> [最后一页] </a></td>
<td> 输入页次:<input type="text" size="3" name="pageno"></td>
<td><input type="submit" name="SEND" value="送出"></td>
<td> <a href=password.jsp><font color="red" size="5"><i> 站长专用</i></font></a></td>
</tr>
</table>
</form>
</center>
<%
String name,email,subject,time,sex,memo;
while(rs.next()){
name=rs.getString(1);
email=rs.getString(2);
subject=rs.getString(3);
time=rs.getString(4);
sex=rs.getString(5);
memo=rs.getString(6);
//out.print("<center>");
out.print("<table border=0>");
out.print("<tr><td>姓名:</td><td>"+name+"</td></tr>");
out.print("<tr><td>Email:</td><td>"+email+"</td></tr>");
out.print("<tr><td>时间:</td><td>"+time+"</td></tr>");
out.print("<tr><td>主题:</td><td>"+subject+"</td></tr>");
out.print("<tr><td valign=top>留言:</td><td>"+memo+"<img src="+sex+"></td></tr>");
out.print("</table><hr>");
}
%>
<center><a href=message.html>我要留言 </a> <a href=board.jsp>查看留言</a>
</body>
</html>
<html>
<title>留言板</title>
<body>
<%@page import="java.sql.*"%>
<%@page contentType="text/html;charset=GB2312"%>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con=DriverManager.getConnection("jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=GBK","root","505505");
Statement smt=con.createStatement();
ResultSet rs;
String sql;//count用来记录留言的次数,我是以每5个留言为一页,lastp为最后一页,pageno代表页码,prep为前一页,nextp为下一页,numf为此页第一个留言的编码,numl为此页最后一个编码
int count=0,lastp,numf,numl,prep,nextp,pageno;
if(request.getParameter("pageno")==null)
pageno=0;
else
pageno=Integer.parseInt(request.getParameter("pageno"));
sql="select * from message";
rs=smt.executeQuery(sql);
while(rs.next())
count++;
lastp=(int)Math.ceil((double)count/5);
if(pageno==0||pageno>lastp)
pageno=lastp;
numf=pageno*5-4;
numl=numf+4;
if(pageno==1)
prep=1;
else
prep=pageno-1;
if(pageno==lastp)
nextp=lastp;
else
nextp=pageno+1; //调试的时候提示说明是这里出错了
sql="select * from message where id between"+numf+"and"+numl;
rs=smt.executeQuery(sql);
%> <font color="green" size="7">留言板</font>
<hr>
<center>
<form action="board.jsp" method="post">
<table border="0">
<tr>
<td>目前页次: <font color="red"><%=pageno%></font>/
<font color="blue"><%=lastp%></font></td>
<td><a href=board.jsp?pageno=<%=prep%>>[上一页] </a></td>
<td><a href=board.jsp?pageno=<%=nextp%>> [下一页] </a></td>
<td><a href=board.jsp?pageno=1> [第一页] </a></td>
<td><a href=board.jsp> [最后一页] </a></td>
<td> 输入页次:<input type="text" size="3" name="pageno"></td>
<td><input type="submit" name="SEND" value="送出"></td>
<td> <a href=password.jsp><font color="red" size="5"><i> 站长专用</i></font></a></td>
</tr>
</table>
</form>
</center>
<%
String name,email,subject,time,sex,memo;
while(rs.next()){
name=rs.getString(1);
email=rs.getString(2);
subject=rs.getString(3);
time=rs.getString(4);
sex=rs.getString(5);
memo=rs.getString(6);
//out.print("<center>");
out.print("<table border=0>");
out.print("<tr><td>姓名:</td><td>"+name+"</td></tr>");
out.print("<tr><td>Email:</td><td>"+email+"</td></tr>");
out.print("<tr><td>时间:</td><td>"+time+"</td></tr>");
out.print("<tr><td>主题:</td><td>"+subject+"</td></tr>");
out.print("<tr><td valign=top>留言:</td><td>"+memo+"<img src="+sex+"></td></tr>");
out.print("</table><hr>");
}
%>
<center><a href=message.html>我要留言 </a> <a href=board.jsp>查看留言</a>
</body>
</html>
sql="select * from message where id between "+numf+" and "+numl;