留言板要实现的功能是:浏览的人能留言并能分页的查看留言,管理员能对留言进行处理!
这个留言板由9个小程序组成,分别是:board.jsp;message.html;opendata.jsp;manager.jsp;password.jsp;check.jsp;delete.jsp;convert.jsp
现在说第一个:board.jsp
他的任务是整个留言板的主程序,让使用者留言,并提供分页功能!
在开始之前,我们必须在mysql数据库建立一个mydate的数据库,在mudate中建立名为message的表:
mysql>create table message( name char(20),email char(40 ),subject char(60),time char(60),sex char(10),memo text,id int not null auto_increment,primary key(id));
board.jsp代码:
流言板
<%@ page import="java.sql.*"%>
<%@ page contentType="text/html;charset=GB2312"%>
<%@ include file="opendata.jsp"%>
<%
int count=0,lastp,numf,numl,prep,nextp,pageno;
if(request.getParameter("pageno")==null) //pageno:代表页码
pageno=0;
else
pageno=Integer.parseInt(request.getParameter("pageno"));
sql="select * from message";
rs=smt.executeQuery(sql);
while(rs.next())
count++; <%-- count:多少留言--%>
lastp=(int)Math.ceil((double)count/5);
<%--用来计算此表中有几页留言:ceil返回大于等于其数字参数的最小整数。
Math.ceil(number)
必选项number 参数是数值表达式。
说明
返回值为大于等于其数字参数的最小整数。 --%>
if(pageno==0||pageno>lastp)
pageno=lastp;
numf=pageno*5-4; <%--显示留言的第一笔数据的编号_id--%>
numl=numf+4;<%--numl:此页的最后的一笔数据编号id--%>
if(pageno==1)
prep=1; <%-- prep:上一页--%>
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);
%>
留言板
<%
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("");
out.print("");
out.print("姓名 | "+name+" |
");
out.print("E-mail | "+email+" |
");
out.print("时间 | "+time+" |
");
out.print("主题 | "+subject+" |
");
out.print("留言 | "+memo+" |
");
out.print("
");
}
%>
我要留言
查看留言