留言板要实现的功能是:浏览的人能留言并能分页的查看留言,管理员能对留言进行处理! 这个留言板由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代码: <HTML> <HEAD> <TITLE>流言板</TITLE>
</HEAD> <BODY> <%@ 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);
%>
<font size=7 color=green>留言板</font> <hr> <center> <form action=board.jsp method=POST> <table boder=0> <tr> <td>目前的页次<font color=red><%=pageno%></font>/<font color=blue><%=lastp%></font></td> <td><a href=board.jsp?pageno=<%=prep%>>[上一页]</a></td> <%--将参数pageno传递给程序,依据它来计算numl和numf,再将留言数据通过sql取出--%> <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> <% 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=1>"); out.print("<tr><td bgcolor=yellow>姓名</td><td>"+name+"</td></tr>"); out.print("<tr><td bgcolor=yellow>E-mail</td><td>"+email+"</td></tr>"); out.print("<tr><td bgcolor=yellow>时间</td><td>"+time+"</td></tr>"); out.print("<tr><td bgcolor=yellow>主题</td><td>"+subject+"</td></tr>"); out.print("<tr><td bgcolor=yellow>留言</td><td>"+memo+"<img src="+sex+"></td></tr>"); out.print("</table><p>");
} %> <hr> <center><a href="message.html">我要留言</a> <a href=board.jsp>查看留言</a>
</BODY> </HTML>
[MySql]PHP存取 Mysql 数据乱码终极解决方案 [MySql]解决Table xxx is marked as crashed and should … [MySql][MySQL]快速解决"is marked as crashed and shoul… [MySql]MySQL DELETE语法用法详解 [MySql]mysql中时间日期格式化 [MySql]修改mysql导入文件大小限制 [其他]MySql常用命令大全 [Web开发]把ACCESS的数据导入到Mysql中的方法详解 [MySql]解决mysql 1040错误Too many connections的方法 [系统软件]利用crontab系统每天定时备份MySQL数据库
|