Java

本类阅读TOP10

·使用MyEclipse开发Struts框架的Hello World!(录像1)
·hibernate配置笔记
·AOP编程入门--Java篇
·linux下Tomcat 5.0.20 与 Apache 2 安装/集成/配置
·在win2003下整合了整合Tomcat5.5+ apache_2.0.53+ mod_jk_2.0.47.dll
·构建Linux下IDE环境--Eclipse篇
·Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)
·ASP、JSP、PHP 三种技术比较
·Tomcat5.5.9的安装配置
·AWT GUI 设计笔记(二)

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
jsp+mysql制作简单的留言板(1)

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

留言板要实现的功能是:浏览的人能留言并能分页的查看留言,管理员能对留言进行处理!
这个留言板由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>




相关文章

相关软件