java留言板源代码三: 给java初学者.

你我为了理想而历尽了艰难,才走向了成功之路。但愿你还能记得,永远地记得,那一段充满着奋斗激情的闪亮日子。
作 者: precom (皮蛋) 2000.12.10reply.jsp ==================================== <html><head> <META content="text/html; charset=gb2312 " http-equiv=Content-Type> <title>张家界电话黄页(网上114)</title></head> <style type="text/css"> <!-- BODY { FONT-FAMILY: "宋体","Arial Narrow", "Times New Roman"; FONT-SI ZE: 9pt } .p1 { FONT-FAMILY: "宋体", "Arial Narrow", "Times New Roman"; FONT-SIZ E: 12pt } A:link { COLOR: #00793d; TEXT-DECORATION: none } A:visited { TEXT-DECORATION: none } A:hover { TEXT-DECORATION: underline} TD { FONT-FAMILY: "宋体", "Arial Narrow", "Times New Roman"; FONT-SIZE : 9pt } .p2 { FONT-FAMILY: "宋体", "Arial Narrow", "Times New Roman"; FONT-SIZ E: 9pt; LINE-HEIGHT: 150% } .p3 { FONT-FAMILY: "宋体", "Arial Narrow", "Times New Roman"; FONT-SIZ E: 9pt; LINE-HEIGHT: 120% } --> </style> <body> <%@ page contentType="text/html; charset=GB2312" %> <%@ page language="java" import="java.sql.*" %> <jsp:useBean id="testInq" scope="page" class="ymbean.opDb" /> <% int pages=1; int pagesize=10; int count=0; int totalpages=0; String countsql="",inqsql="",updatesql="",lwhere="",insertsql="",st= ""; String lw_title="",lw_author="",pagetitle="",author_http="",author_e mail="",lw_ico="0", lw_content="",lw_class1=""; String author_ip="",lw_time="",lw_class2="",lw_type="",zt_time="",zt _author=""; int answer_num=0,click_num=0; int inquire_item=1; String inquire_itemt="",inquire_value=""; String lurlt="<a rel="nofollow noopener noreferrer" href=reply.jsp?"; lwhere=" where "; //只显示主贴 /* Enumeration e = request.getParameterNames(); while (e.hasMoreElements()) { String name = (String) e.nextElement(); */ try{ //取显示的页页序数 pages = new Integer(request.getParameter("pages")).intValue(); } catch (Exception e) {} try{ //取查询参数 lw_class1=new String(request.getParameter("lw_class1").getBytes ("ISO8859_1")); lw_class2=new String(request.getParameter("lw_class2").getBytes ("ISO8859_1")); zt_time=new String(request.getParameter("zt_time").getBytes("IS O8859_1")); zt_author=new String(request.getParameter("zt_author").getBytes ("ISO8859_1")); lwhere=" where ( lw_class1='"+lw_class1+"' and lw_class2='"+lw_ class2+ "' and (lw_time='"+ zt_time+"' or zt_time='"+zt_time+ "') and (author_email='"+zt_author+"' or zt_author='"+zt _author+"') ) "; lurlt=lurlt+"lw_class1="+lw_class1+"&lw_class2="+lw_class2+"&zt _time="+zt_time+ "&zt_author="+zt_author+"&"; //out.print(lwhere); } catch (Exception e) { //out.print("error1: "+e+"<hr>"); } try{ //取得参数 留言内容 lw_class1=new String(request.getParameter("lw_class1").getBytes("ISO 8859_1")); lw_class2=new String(request.getParameter("lw_class2").getBytes("ISO 8859_1")); lw_title=new String(request.getParameter("lw_title").getBytes("ISO88 59_1")); lw_author=new String(request.getParameter("lw_author").getBytes("ISO 8859_1")); pagetitle=new String(request.getParameter("pagetitle").getBytes("ISO 8859_1")); author_http=new String(request.getParameter("author_http").getBytes( "ISO8859_1")); author_email=new String(request.getParameter("author_email").getByte s("ISO8859_1")); zt_time=new String(request.getParameter("zt_time").getBytes("ISO8859 _1")); zt_author=new String(request.getParameter("zt_author").getBytes("ISO 8859_1")); lw_ico=request.getParameter("gifface"); } catch (Exception e) {} try{ lw_content=new String(request.getParameter("lw_content").getBytes("I SO8859_1")); String requestMethod=request.getMethod(); requestMethod=requestMethod.toUpperCase(); if(requestMethod.indexOf("POST")<0) { out.print("非法操作!"); return; } //形成其他数据项 author_ip=request.getRemoteAddr() ; lw_time=testInq.getCurrentDate("yyyyMMddHHmmss"); lw_type=""+"c"; //从贴 answer_num=0; click_num=0; //================ st="','"; //保证留言所有数据项的长度在正常范围内 if(lw_title.length()>50) lw_title=lw_title.substring(0,50); if(lw_author.length()>20) lw_author=lw_author.substring(0,20); if(author_http.length()>40) author_http=author_http.substring(0,40); if(author_email.length()>50) author_email=author_email.substring(0,4 0); if(zt_author.length()>50) zt_author=zt_author.substring(0,40); if(lw_content.length()>4000) lw_content=lw_content.substring(0,4000) insertsql="insert into guestbook values('"+lw_title+st+lw_author+st+ author_http+st+ author_email+st+lw_ico+st+lw_time+"',"+answer_num+","+cli ck_num+",'"+ author_ip+st+lw_class1+st+lw_class2+st+lw_type+st+zt_time +st+zt_author+st+ lw_content+"')"; //out.print(insertsql); //插入留言 try{ st=testInq.executeUpdate(insertsql); if(st.indexOf("executeUpdate ok")<0) out.print("msg="+st); else { updatesql="update guestbook set answer_num=answer_num + 1 "+l where; //增加回复人数统计 try{ st=testInq.executeUpdate(updatesql); if(st.indexOf("executeUpdate ok")<0) out.print("msg="+st); }catch (Exception e) { } } }catch (Exception e) { out.print("留言出错:"+e);} } catch (Exception e) {} %> <% //验证留言输入项合法性的javascript String ljs=" <SCRIPT language=JavaScript> \n"+ " <!-- \n"+ " function ValidInput() \n"+ " {if(document.sign.lw_author.value==\&;\&;) \n"+ " {alert(\&;请填写您的大名。\&;); \n"+ " document.sign.lw_author.focus(); \n"+ " return false;} \n"+ " if(document.sign.lw_title.value==\&;\&;) \n"+ " {alert(\&;请填写留言主题。\&;); \n"+ " document.sign.lw_title.focus(); \n"+ " return false;} \n"+ " if (document.sign.author_email.value!=\&;\&;) \n"+ " { if ((document.sign.author_email.value.indexOf(\&;@\&;)<0)//(document .sign.author_email.value.indexOf(\&;:\&;)!=-1)) \n"+ " {alert(\&;您填写的EMail无效,请填写一个有效的Email!\&;); \n"+ " document.sign.author_emaill.focus(); \n"+ " return false; \n"+ " } \n"+ " } \n"+ " return true; \n"+ " } \n"+ " function ValidSearch() \n"+ " { if(document.frmsearch.findstr.value==\&;\&;) \n"+ " {alert(\&;不能搜索空串!\&;); \n"+ " document.frmsearch.findstr.focus(); \n"+ " return false;} \n"+ " } \n"+ " //--> \n"+ " </SCRIPT> "; out.print(ljs); %> <% //显示最近时间发表的一页留言 countsql="select count(lw_title) from guestbook "+lwhere; inqsql ="select lw_title,lw_author,lw_time,lw_content,author_ip, "+ " author_email from guestbook "+lwhere+" order by lw_time desc " ; updatesql="update guestbook set click_num=click_num + 1 "+lwhere; //增加浏览人数统计 try{ st=testInq.executeUpdate(updatesql); if(st.indexOf("executeUpdate ok")<0) out.print("msg="+st); }catch (Exception e) { } //out.print(inqsql); if(pages>0) { try { try{ ResultSet rcount=testInq.executeQuery(countsql); if(rcount.next()) { count = rcount.getInt(1); } rcount.close(); } catch (Exception el1) { out.println("count record error : "+el1+"<br>" ); out.println(countsql); } totalpages=(int)(count/pagesize); if(count>totalpages*pagesize) totalpages++; st=""+ " <TABLE align=center border=0 cellPadding=0 cellSpacing= 0 width=\&;95%\&;> "+ " <TBODY> <TR> <TD align=middle bgColor=#97badd width=\&;1 00%\&;><FONT color=#ff0000>"+ " 共 "+totalpages+" 页,"+count+" 条. "+" 当前页: "+pages+ " </FONT></TD></TR></TBODY></TABLE><BR> "; out.print(st); //out.print(" 共 "+totalpages+" 页,"+ count+" 条. "+" 当前页: "+pages+"<br>"); st=" <center> "+ " <TABLE border=0 cellPadding=2 cellSpacing=1 width=\&;95%\&;> "+ " <TBODY> "+ " <TR> "+ " <TD align=middle bgColor=#6699cc width=\&;55%\&;><FONT "+ " color=#ffffff>留言主题</FONT></TD> "+ " <TD align=middle bgColor=#6699cc width=50><FONT "+ " color=#ffffff>回应数</FONT></TD> "+ " <TD align=middle bgColor=#6699cc width=40><FONT "+ " color=#ffffff>点击数</FONT></TD> "+ " <TD align=middle bgColor=#6699cc width=100><FONT "+ " color=#ffffff>作者名</FONT></TD> "+ " <TD align=middle bgColor=#6699cc width=140><FONT "+ " color=#ffffff>发表/回应时间</FONT></TD></TR> "; //out.print(st); if(count > 0 ) { ResultSet rs = testInq.executeQuery(inqsql); ResultSetMetaData metaData = rs.getMetaData(); int i; // 跳过pages -1 页,使cursor指向pages并准备显示 for(i=1;i<=(pages - 1)*pagesize;i++) rs.next(); //显示第pages页开始 st= " <CENTER> <TABLE border=0 cellSpacing=1 width=\&;95%\&; > <TBODY> "; out.print(st); String linestr=""; for(i=1;i<=pagesize;i++) if(rs.next()) { lw_title=rs.getString("lw_title"); lw_author=rs.getString("lw_author"); lw_time=rs.getString("lw_time"); lw_content=rs.getString("lw_content"); author_ip=rs.getString("author_ip"); author_email=rs.getString("author_email"); st=lw_time.substring(0,4)+"-"+lw_time.substring(4,6)+"-" +lw_time.substring(6,8)+":"+ lw_time.substring(8,10)+":"+lw_time.substring(10,12)+ ":"+lw_time.substring(12,14); try{lw_content=testInq.addBr(testInq.removeComment(lw_co ntent));} catch (Exception e) {} linestr =""+ " <TR bgColor=#bed9fc> "+ " <TD align=left width=\&;75%\&;><FONT "+ " color=#0000cd>留言主题:</FONT><STRONG>" +lw_title+"</STRONG></TD> "+ " <TD align=left width=\&;25%\&;><FONT color= #0000cd>留言时间:</FONT>"+st+"</TD></TR> "+ " <TR bgColor=#e7f1fe> "+ " <TD colSpan=2 "+ " width=\&;700\&; wrap=yes><BR>"+lw_content+" <BR><br></TD></TR> "+ " <TR bgColor=#bed9fc> "+ " <TD align=right colSpan=2 width=\&;100%\&;> <FONT "+ " color=#0000cd>作者:</FONT>"+lw_author+" <FONT "+ " color=#0000cd>来源:</FONT>"+author_ip+" </TD></TR>"; out.println(linestr); } rs.close(); //显示第pages页结束 st= " </TBODY></TABLE></CENTER></DIV><BR> "+ " <CENTER><A "+ " rel="nofollow noopener noreferrer" href=\&;guestbook.jsp\&;><FONT "+ " color=blue face=楷体_GB2312 size=4>返回留言板 首页</FONT></A></CENTER><BR> "+ " <HR align=center noShade SIZE=1 width=\&;95%\&; > "; out.print(st); int iFirst=1,iLast=totalpages,iPre,iNext; if(pages<=1) iPre=1; else iPre=pages - 1; if(pages>=totalpages) iNext=totalpages; else iNext=pages + 1; int n=(int)(count/pagesize); if(n*pagesize<count) n++; if(n>1) { //for(i=1;i<=n;i++) out.print("<a rel="nofollow noopener noreferrer" href=inquire.jsp?pages= "+i+">"+i+" </a>"); //out.print("<HR align=center noShade SIZE=1 width=\&;95%\ ">"); String lt1="返回主页",lt2="第一页",lt3="上一页",lt4="下一 页",lt5="最后一页",lt6=""; lt6="<a rel="nofollow noopener noreferrer" href=http://www.zj.hn.cn>"+ lt1 + " </ a>"+ lurlt + "pages="+iFirst+"><FONT color=red>"+lt2+"&nbs p; </a>"+ lurlt + "pages="+iPre+"><FONT color=red>"+lt3+" </a>" + lurlt + "pages="+iNext+"><FONT color=red>"+lt4+" ; </a>" + lurlt + "pages="+iLast+"><FONT color=red>"+lt5+" ; </a>"; st=""+ " <TABLE align=center border=0 cellPadding=0 cellSpacing= 0 width=\&;95%\&;> "+ " <TBODY> <TR> <TD align=middle bgColor=#97badd width=\&;1 00%\&;><FONT color=#ff0000>"+ lt6+ " </FONT></TD></TR></TBODY></TABLE><BR> "; out.print(st); } } } catch (Exception e) { out.println("error: "+e); } } %> <% //留言板界面尾部 String lbottom=""; lbottom=lbottom+ " <center> \n"+ " <FORM action=reply.jsp method=post name=sign> \n"+ " <INPUT name=lw_class1 type=hidden value=cnzjj_gt> \n"+ " <INPUT name=lw_class2 type=hidden value="+lw_class2+"> \n" + " <INPUT name=pages type=hidden value=1> \n"+ " <INPUT name=zt_time type=hidden value="+zt_time+"> \n"+ " <INPUT name=zt_author type=hidden value="+zt_author+"> \n" + " <TABLE bgColor=#d5e8fd border=0 cellSpacing=1 width=\&;95%\&;> \n"+ " <TBODY> \n"+ " <TR> \n"+ " <TD align=middle bgColor=#e6e6fa colSpan=2 noWrap><STRONG><FONT color=blue \n"+ " face=楷体_GB2312 size=5>发 表 意 见</FONT></STRONG> &nbs p; [加*的内容必须填写] </TD></TR> \n"+ " <TR> \n"+ " <TD noWrap width=\&;45%\&;> \n"+ " <DIV align=left> \n"+ " <TABLE bgColor=#d5e8fd border=0 cellSpacing=1 width=\&;100%\&;> \n"+ " <TBODY> \n"+ " <TR> \n"+ " <TD noWrap width=\&;100%\&;>*留言主题:<INPUT maxLength=40 n ame=lw_title \n"+ " size=36></TD></TR> \n"+ " <TR> \n"+ " <TD noWrap width=\&;100%\&;>*网上大名:<INPUT maxLength=18 n ame=lw_author \n"+ " size=36></TD></TR> \n"+ " <TR> \n"+ " <TD noWrap width=\&;100%\&;> 主页标题:<INPUT maxLength =40 name=pagetitle \n"+ " size=36></TD></TR> \n"+ " <TR> \n"+ " <TD noWrap width=\&;100%\&;> 主页地址:<INPUT maxLength =255 name=author_http \n"+ " size=36></TD></TR> \n"+ " <TR> \n"+ " <TD noWrap width=\&;100%\&;>*电子邮件:<INPUT maxLength=40 n ame=author_email \n"+ " size=36></TD></TR></TBODY></TABLE></DIV></TD> \n"+ " <TD noWrap vAlign=top width=\&;55%\&;> \n"+ " <DIV align=left> \n"+ " <TABLE bgColor=#b6d7fc border=0 cellSpacing=1 width=\&;100%\&;> \n"+ " <TBODY> \n"+ " <TR> \n"+ " <TD width=\&;100%\&;>请在下面填写你的留言:</TD></TR> \n"+ " <TR> \n"+ " <TD width=\&;100%\&;><TEXTAREA cols=50 name=lw_content rows= 7></TEXTAREA></TD></TR></TBODY></TABLE></DIV></TD></TR> \n"+ " <TR> \n"+ " <TD bgColor=#fbf7ea colSpan=2 noWrap>表情\n"+ " <INPUT name=gifface type=radio value=1 checked><IMG \n"+ " alt=\&;1.gif (152 bytes)\&; height=15 src=\&;1.gif\&; width=15> <I NPUT \n"+ " name=gifface type=radio value=2><IMG alt=\&;2.gif (174 bytes)\&; height=15 \n"+ " src=\&;2.gif\&; width=15> <INPUT name=gifface type=radio value=3 ><IMG \n"+ " alt=\&;3.gif (147 bytes)\&; height=15 src=\&;3.gif\&; width=15> <I NPUT \n"+ " name=gifface type=radio value=4><IMG alt=\&;4.gif (172 bytes)\&; height=15 \n"+ " src=\&;4.gif\&; width=15> <INPUT name=gifface type=radio value=5 ><IMG \n"+ " alt=\&;5.gif (118 bytes)\&; height=15 src=\&;5.gif\&; width=15> <I NPUT \n"+ " name=gifface type=radio value=6><IMG alt=\&;6.gif (180 bytes)\&; height=15 \n"+ " src=\&;6.gif\&; width=15> <INPUT name=gifface type=radio value=7 ><IMG \n"+ " alt=\&;7.gif (180 bytes)\&; height=15 src=\&;7.gif\&; width=15> <I NPUT \n"+ " name=gifface type=radio value=8><IMG alt=\&;8.gif (96 bytes)\&; height=15 \n"+ " src=\&;8.gif\&; width=15> <INPUT name=gifface type=radio value=9 ><IMG \n"+ " alt=\&;9.gif (162 bytes)\&; height=15 src=\&;9.gif\&; width=15> <I NPUT \n"+ " name=gifface type=radio value=10><IMG alt=\&;10.gif (113 bytes) \&; height=15 \n"+ " src=\&;10.gif\&; width=15> <INPUT name=gifface type=radio value= 11><IMG \n"+ " alt=\&;11.gif (93 bytes)\&; height=15 src=\&;11.gif\&; width=15> < INPUT \n"+ " name=gifface type=radio value=12> <IMG alt=\&;12.gif (149 bytes )\&; height=14 \n"+ " src=\&;12.gif\&; width=15> \n"+ " <INPUT \n"+ " name=gifface type=radio value=13> <IMG alt=\&;13.gif (149 bytes )\&; height=14 \n"+ " src=\&;13.gif\&; width=15> \n"+ " <INPUT \n"+ " name=gifface type=radio value=14> <IMG alt=\&;14.gif (149 bytes )\&; height=14 \n"+ " src=\&;14.gif\&; width=15> \n"+ " <INPUT \n"+ " name=gifface type=radio value=15> <IMG alt=\&;15.gif (149 bytes )\&; height=14 \n"+ " src=\&;15.gif\&; width=15> \n"+ " <INPUT \n"+ " name=gifface type=radio value=16> <IMG alt=\&;16.gif (149 bytes )\&; height=14 \n"+ " src=\&;16.gif\&; width=15> </TD> \n"+ " </TR> \n"+ " <TR> \n"+ " <TD align=middle colSpan=2 noWrap><INPUT name=cmdGO onclick=\&;re turn ValidInput()\&; type=submit value=\&;提 交\&;> \n"+ " <INPUT name=cmdPrev onclick=\&;return ValidInput()\&; type=submit valu e=\&;预 览\&;> \n"+ " <INPUT name=cmdCancel type=reset value=\&;重 写\&;> <INPU T name=cmdBack onclick=javascript:history.go(-1) type=button value=\&;返 回\&;> \n"+ " </TD></TR></TBODY></TABLE></FORM></CENTER></DIV> "; out.print(lbottom); %> </body></html> 作 者: precom (皮蛋) 2000.12.10

以上就是javascriptp留言板源代码三: 给javascriptp初学者.。人生之路虽然苦,但只要我们坚定信念,就一定可以走出属于自己的路。更多关于javascriptp留言板源代码三: 给javascriptp初学者.请关注haodaima.com其它相关文章!

标签: java