目录
一、登录
验证码:随着社会的发展,互联网的进步,信息验证的过程也越来越复杂,而验证码就是其中之一,下面让我们一起来看看验证码吧;(其中用到的方法在前两张的时候起到过)
login.jsp以及dologin.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户登录</title>
<link href="../images/login.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
var str = "qwertyupasdfghjkzxcvbnmQWERTYUPASDFGHJKLZXCVBNM23456789";
function yz() {
//随机出4个0-字符串长度之间的数字 做为下标
yzmStr="";
for(var i=1;i<=4;i++){
yzmStr+=str.substr(Math.round(Math.random()*(str.length-1)),1);
}
//把验证码赋值到页面
document.getElementById("syzm").innerHTML=yzmStr;
}
function $(id) {
return document.getElementById(id);
}
function login_yz() {
//验证 用户名 和 密码不能为空
//获取用户名
var uname = $("uname").value;
if(uname.length==0){
alert("用户名不能为空");
return false;
}
//获取密码
var upwd = $("upwd").value;
if(upwd.length==0){
alert("密码不能为空");
return false;
}
//获取验证码:判断和电脑的验证码是否相等
//PS:自己实现-输入的验证码不区分大小写-大小写转换
var yzm = $("uyzm").value;
//yzm.lower();
var str1=yzm.toUpperCase();
//alert(str1);
var str2=yzmStr.toUpperCase();
if(str1!=str2){
alert("验证码输入错误,请重新输入");
//清空输入的验证码
$("uyzm").value="";
//重新生成验证码
yz();
return false;
}
}
</script>
</head>
<body>
<body onload="yz()">
<div id="login">
<div id="top">
<div id="top_left">
<img src="../images/login_03.gif" />
</div>
<div id="top_center"></div>
</div>
<div id="center">
<div id="center_left"></div>
<div id="center_middle">
<form action="dologin.jsp" onsubmit="return login_yz()">
<div id="user">
用 户 <input type="text" id="uname" name="textfield" />
</div>
<div id="password">
密 码 <input type="password" id="upwd" name="textfield2" />
</div>
<div id="yzm">
验证码 <input id="uyzm" style="width: 50px;" type="text" name="textfield3" />
<span id="syzm" onclick="yz()"></span>
</div>
<div id="btn">
<input type="submit" value="登录">
<input type="reset" value="清空">
</div>
</form>
</div>
<div id="center_right"></div>
</div>
<div id="down">
<div id="down_left">
<div id="inf">
<span class="inf_text">版本信息</span> <span class="copyright">管理信息系统
2008 v2.0</span>
</div>
</div>
<div id="down_center"></div>
</div>
</div>
</body>
</html>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//用来接收登录页面传递的用户名和密码
String uname = request.getParameter("textfield");
String upwd = request.getParameter("textfield2");
//连接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
//执行sql语句
PreparedStatement ps = con.prepareStatement("select * from T277 where uname=? and upwd=?");
//赋值
ps.setString(1, uname);
ps.setString(2, upwd);
ResultSet rs = ps.executeQuery();
if(rs.next()){//成功就跳转到成功页面
request.getRequestDispatcher("admin.jsp").forward(request,response);
}else{//失败
out.print("<script>alert('用户名或密码错误,请重新登录');location.href='login.jsp'</script>");
}
%>
二、新闻管理系统的添加系统
通过上面的登录页面我们可以发现:我们登录主页面条道路我们的主页面,那么接下来我们来看添加功能,其中有添加新闻和添加主题两种功能.
add_news.jsp以及doadd_news.jsp
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>添加新闻--管理后台</title>
<link href="../CSS/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div id="welcome">欢迎使用新闻发布系统!</div>
<div id="nav">
<div id="logo"><img src="../images/logo.jpg" alt="新闻中国" /></div>
<div id="a_b01"><img src="../images/a_b01.gif" alt="" /></div>
</div>
</div>
<div id="admin_bar">
<div id="status">管理员: 登录     <a href="#">login out</a></div>
<div id="channel"> </div>
</div>
<div id="main">
<div id="opt_list">
<ul>
<li><a href="add_news.jsp">添加新闻</a></li>
<li><a href="admin.jsp">查找新闻</a></li>
<li><a href="add_sub.jsp">添加主题</a></li>
<li><a href="update_sub.jsp">编辑主题</a></li>
</ul>
</div>
<div id="opt_area">
<h1 id="opt_type"> 添加新闻: </h1>
<form action="doadd_news.jsp" method="post">
<p>
<label> 主题 </label>
<select name="ntid">
<%
//连接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("select * from subject");
ResultSet rs = ps.executeQuery();
while(rs.next()){
%>
<option value='<%=rs.getInt(1)%>'><%=rs.getString(2) %></option>
<%} %>
</select>
</p>
<p>
<label> 标题 </label>
<input name="ntitle" type="text" class="opt_input" />
</p>
<p>
<label> 作者 </label>
<input name="nauthor" type="text" class="opt_input" />
</p>
<p>
<label> 摘要 </label>
<textarea name="nsummary" cols="40" rows="3"></textarea>
</p>
<p>
<label> 内容 </label>
<textarea name="ncontent" cols="70" rows="10"></textarea>
</p>
<p>
<label> 上传图片 </label>
<input name="file" type="file" class="opt_input" />
</p>
<input name="action" type="hidden" value="addnews">
<input type="submit" value="提交" class="opt_sub" />
<input type="reset" value="重置" class="opt_sub" />
</form>
</div>
</div>
<div id="site_link"> <a href="#">关于我们</a><span>|</span> <a href="#">Aboue Us</a><span>|</span> <a href="#">联系我们</a><span>|</span> <a href="#">广告服务</a><span>|</span> <a href="#">供稿服务</a><span>|</span> <a href="#">法律声明</a><span>|</span> <a href="#">招聘信息</a><span>|</span> <a href="#">网站地图</a><span>|</span> <a href="#">留言反馈</a> </div>
<div id="footer">
<p class="">24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888<br />
文明办网文明上网举报电话:010-627488888      举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p>
<p class="copyright">Copyright © 1999-2009 News China gov, All Right Reserver<br />
新闻中国 版权所有</p>
</div>
</body>
</html>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//乱码
request.setCharacterEncoding("utf-8");
//接受添加页面传过来的值
//新闻主题编号
int tid = Integer.valueOf( request.getParameter("ntid"));
//新闻标题
String ntitle = request.getParameter("ntitle");
//新闻作者
String nzz = request.getParameter("nauthor");
//新闻摘要
String nzy = request.getParameter("nsummary");
//新闻内容
String nnr = request.getParameter("ncontent");
//连接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
//获取新闻的下一个编号
int nextNid = 1;
PreparedStatement ps = con.prepareStatement("select max(nid) from news");
ResultSet rs = ps.executeQuery();
if(rs.next()){
nextNid = rs.getInt(1)+1;
}
//添加新闻
ps = con.prepareStatement("insert into news values(?,?,?,?,?,sysdate,0,?)");
ps.setInt(1, nextNid);
ps.setInt(2, tid);
ps.setString(3, ntitle);
ps.setString(4, nzz);
ps.setString(5, nnr);
ps.setString(6, nzy);
//执行sql语句
int i = ps.executeUpdate();
if(i>0){
out.print("<script>alert('添加成功');location.href='admin.jsp'</script>");
}else{
out.print("<script>alert('添加失败');location.href='add_news.jsp'</script>");
}
%>
三、新闻发布系统的绑定数据+模糊查询
我们一般进入一个网站后,就会发现有相应的消息展示在我们面前,那么这个功能也就是我这里将要绑定的数据
一般情况下我们需要查看某一类消息,可以通过关键字来查询,也就是模糊查询
admin.jsp
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>绑定数据--管理后台</title>
<link href="../CSS/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div id="welcome">欢迎使用新闻发布系统!</div>
<div id="nav">
<div id="logo"><img src="../images/logo.jpg" alt="新闻中国" /></div>
<div id="a_b01"><img src="../images/a_b01.gif" alt="" /></div>
</div>
</div>
<div id="admin_bar">
<div id="status">管理员: 登录      <a href="#">login out</a></div>
<div id="channel"> </div>
</div>
<div id="main">
<div id="opt_list">
<ul>
<li><a href="add_news.jsp">添加新闻</a></li>
<li><a href="admin.jsp">查找新闻</a></li>
<li><a href="add_sub.jsp">添加主题</a></li>
<li><a href="update_sub.jsp">编辑主题</a></li>
</ul>
</div>
<div id="opt_area">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<script language="javascript">
//删除方法
function clickdel(){
return confirm("删除请点击确认");
}
</script>
<form action="admin.jsp" align="center">
<input type="text" name="str">
<input type="submit" value="查询">
</form>
<ul class="classlist">
<%
String str = request.getParameter("str");
if(str==null){
str = "";
}
String sql = "select * from news where ntitle like '%"+str+"%' order by nid desc";
//连接数据库查询新闻信息
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
//建立连接
Connection con = DriverManager.getConnection(url, "scott", "tiger");
//执行对象
PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs= ps.executeQuery();
while(rs.next()){
%>
<li>
<a href="read_news.jsp?nid=<%=rs.getInt(1)%>">
<%=rs.getString("ntitle") %>
</a>
<span> 作者:<%=rs.getString("nzz") %>    
<a href='update_news.jsp?nid=<%=rs.getInt(1)%>'>修改</a>     
<a href='dodel_news.jsp?nid=<%=rs.getInt(1) %>' onclick='return clickdel()'>删除</a> </span> </li>
<li class='space'></li>
<%} %>
<p align="right"> 当前页数:[1/3] <a href="#">下一页</a> <a href="#">末页</a> </p>
</ul>
</div>
</div>
<div id="site_link"> <a href="#">关于我们</a><span>|</span> <a href="#">Aboue Us</a><span>|</span> <a href="#">联系我们</a><span>|</span> <a href="#">广告服务</a><span>|</span> <a href="#">供稿服务</a><span>|</span> <a href="#">法律声明</a><span>|</span> <a href="#">招聘信息</a><span>|</span> <a href="#">网站地图</a><span>|</span> <a href="#">留言反馈</a> </div>
<div id="footer">
<p class="">24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888<br />
文明办网文明上网举报电话:010-627488888      举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p>
<p class="copyright">Copyright © 1999-2009 News China gov, All Right Reserver<br />
新闻中国 版权所有</p>
</div>
</body>
</html>
四、新闻发布系统的删除
一般情况系,可能存在信息输入错误的情况,这是需要我们的删除功能
dodel.jsp
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//接受要删除的新闻编号
String id = request.getParameter("nid");
//把字符串转换为整数
int nid = Integer.valueOf(id);
//JDBC 删除
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("delete news where nid="+nid);
int i = ps.executeUpdate();
if(i>0){
out.print("<script>alert('删除成功');location.href='admin.jsp'</script>");
}else{
out.print("<script>alert('删除失败');location.href='admin.jsp'</script>");
}
%>
五、新闻发布系统的阅读
当我们进入网站后,发现这条新闻你很感兴趣,这是我们需要点击文章主题,进去看新闻的全部内容
read_news.jsp
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>新闻中国</title>
<link href="../CSS/read.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
function check() {
var cauthor = document.getElementById("cauthor");
var content = document.getElementById("ccontent");
if (cauthor.value == "") {
alert("用户名不能为空!!");
return false;
} else if (content.value == "") {
alert("评论内容不能为空!!");
return false;
}
return true;
}
</script>
</head>
<body>
<%
//接受来自主页面的admin页面
String nid = request.getParameter("nid");
//单个查询,找到其对应的信息并绑值
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("select * from news where nid="+nid);
ResultSet rs= ps.executeQuery();
String ntitle = "";
String nauthor = "";
String ncontent = "";
String ndate = "";
while(rs.next()){
ntitle = rs.getString(3);
nauthor = rs.getString(4);
ncontent = rs.getString(5);
ndate = rs.getString(6);
}
//关闭资源
if(con!=null&&!con.isClosed()){
con.close();
}
if(ps!=null){
ps.close();
}
if(rs!=null){
rs.close();
}
%>
<div id="header">
<div id="top_login">
<label> 登录名 </label>
<input type="text" id="uname" value="" class="login_input" />
<label> 密  码 </label>
<input type="password" id="upwd" value="" class="login_input" />
<input type="button" class="login_sub" value="登录" onclick="login()"/>
<label id="error"> </label>
<a href="index.jsp" class="login_link">返回首页</a> <img src="../images/friend_logo.gif" alt="Google" id="friend_logo" /> </div>
<div id="nav">
<div id="logo"> <img src="../images/logo.jpg" alt="新闻中国" /> </div>
<div id="a_b01"> <img src="../images/a_b01.gif" alt="" /> </div>
<!--mainnav end-->
</div>
</div>
<div id="container">
<div class="sidebar">
<h1> <img src="../images/title_1.gif" alt="国内新闻" /> </h1>
<div class="side_list">
<ul>
<li> <a href='#'><b> 重庆涉黑富豪黎强夫妇庭审答辩言辞相互矛盾 </b></a> </li>
<li> <a href='#'><b> 发改委:4万亿投资计划不会挤占民间投资空间 </b></a> </li>
<li> <a href='#'><b> 河南2个乡镇政绩报告内容完全一致引关注 </b></a> </li>
</ul>
</div>
<h1> <img src="../images/title_2.gif" alt="国际新闻" /> </h1>
<div class="side_list">
<ul>
<li> <a href='#'><b> 日本首相鸠山首次全面阐述新政府外交政策 </b></a> </li>
<li> <a href='#'><b> 黎巴嫩以色列再次交火互射炮弹 </b></a> </li>
<li> <a href='#'><b> 伊朗将于30日前就核燃料供应方案作出答复 </b></a> </li>
<li> <a href='#'><b> 与基地有关组织宣称对巴格达连环爆炸负责 </b></a> </li>
</ul>
</div>
<h1> <img src="../images/title_3.gif" alt="娱乐新闻" /> </h1>
<div class="side_list">
<ul>
<li> <a href='#'><b> 施瓦辛格启动影视业回迁计划 推进加州经济复苏 </b></a> </li>
<li> <a href='#'><b> 《沧海》导演回应观众质疑 自信能超越《亮剑》 </b></a> </li>
<li> <a href='#'><b> 《海角七号》导演新片开机 吴宇森等出席 </b></a> </li>
<li> <a href='#'><b> 《四大名捕》敦煌热拍 八主演飙戏火花四溅 </b></a> </li>
</ul>
</div>
</div>
<div class="main">
<div class="class_type"> <img src="../images/class_type.gif" alt="新闻中心" /> </div>
<div class="content">
<ul class="classlist">
<table width="80%" align="center">
<tr width="100%">
<td colspan="2" align="center"><%=ntitle %></td>
</tr>
<tr>
<td colspan="2"><hr />
</td>
</tr>
<tr>
<td align="center"><%=ndate %></td>
<td align="left"><%=nauthor %> </td>
</tr>
<tr>
<td colspan="2" align="center"></td>
</tr>
<tr>
<td colspan="2"><%=ncontent %></td>
</tr>
<tr>
<td colspan="2"><hr />
</td>
</tr>
</table>
</ul>
<ul class="classlist">
<table width="80%" align="center">
<td colspan="6"> 暂无评论! </td>
<tr>
<td colspan="6"><hr />
</td>
</tr>
</table>
</ul>
<ul class="classlist">
<form action="#" method="post" onsubmit="return check()">
<table width="80%" align="center">
<tr>
<td> 评 论 </td>
</tr>
<tr>
<td> 用户名: </td>
<td><input id="cauthor" name="cauthor" value="这家伙很懒什么也没留下"/>
IP:
<input name="cip" value="127.0.0.1"
readonly="readonly"/>
</td>
</tr>
<tr>
<td colspan="2"><textarea name="ccontent" cols="70" rows="10"></textarea>
</td>
</tr>
<td><input name="submit" value="发 表" type="submit"/>
</td>
</table>
</form>
</ul>
</div>
</div>
</div>
<div id="friend">
<h1 class="friend_t"> <img src="../images/friend_ico.gif" alt="合作伙伴" /> </h1>
<div class="friend_list">
<ul>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
</ul>
</div>
</div>
<div id="footer">
<p class=""> 24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888 <br />
文明办网文明上网举报电话:010-627488888      举报邮箱: <a href="#">jubao@jb-aptech.com.cn</a> </p>
<p class="copyright"> Copyright © 1999-2009 News China gov, All Right Reserver <br />
新闻中国 版权所有 </p>
</div>
</body>
</html>
六、新闻发布系统的修改
当我们某一个信息输入错误的时候,如果先删除再重新添加这条新闻的话太浪费时间,这是我们可以选择修改功能,只需要修改我们写错的那一部分就可以了,相当的方便,同时也提高了效率。
update_news.jsp以及doupdate_new.jsp
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>编辑新闻--管理后台</title>
<link href="../CSS/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div id="welcome">欢迎使用新闻管理系统!</div>
<div id="nav">
<div id="logo"><img src="../images/logo.jpg" alt="新闻中国" /></div>
<div id="a_b01"><img src="../images/a_b01.gif" alt="" /></div>
</div>
</div>
<div id="admin_bar">
<div id="status">管理员: 登录     <a href="#">login out</a></div>
<div id="channel"> </div>
</div>
<div id="main">
<div id="opt_list">
<ul>
<li><a href="add_news.jsp">添加新闻</a></li>
<li><a href="admin.jsp">查找新闻</a></li>
<li><a href="add_sub.jsp">添加主题</a></li>
<li><a href="update_sub.jsp">编辑主题</a></li>
</ul>
</div>
<div id="opt_area">
<h1 id="opt_type"> 编辑新闻: </h1>
<%
//接受来自主页面的admin页面
int nid = Integer.valueOf(request.getParameter("nid"));
// out.print(nid);
//单个查询,找到其对应的信息并绑值
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("select * from news where nid="+nid);
ResultSet rs= ps.executeQuery();
int tid = 0;//主题编号
String ntitle = "";//标题
String nzz = "";//作者
String nzy = "";//摘要
String nnr = "";//内容
if(rs.next()){
tid = rs.getInt("tid");
ntitle = rs.getString("ntitle");
nzz = rs.getString("nzz");
nzy = rs.getString("nzy");
nnr = rs.getString("ncontent");
}
%>
<form action="doupdate_news.jsp" method="post">
<p>
<label> 主题 </label>
<select name="ntid">
<%
//执行
ps = con.prepareStatement("select * from subject");
//获取结果集
rs = ps.executeQuery();
//遍历结果集
while(rs.next()){
//如果是此条新闻所对应的主题编号的话就让他选中
if(rs.getInt(1)==tid){
out.print("<option value='"+rs.getInt(1)+"' selected='selected'>"+rs.getString(2)+"</option>");
}else{
out.print("<option value='"+rs.getInt(1)+"'>"+rs.getString(2)+"</option>");
}
%>
<%} %>
</select>
</p>
<p>
<label> 标题 </label>
<input value="<%=ntitle %>" name="ntitle" type="text" class="opt_input" />
</p>
<p>
<label> 作者 </label>
<input value="<%=nzz %>" name="nauthor" type="text" class="opt_input" />
</p>
<p>
<label> 摘要 </label>
<textarea name="nsummary" cols="40" rows="3"><%=nzy %></textarea>
</p>
<p>
<label> 内容 </label>
<textarea name="ncontent" cols="70" rows="10"><%=nnr %></textarea>
</p>
<p>
<label> 上传图片 </label>
<input name="file" type="file" class="opt_input" />
</p>
<input name="nid" type="hidden" value="<%=nid%>">
<input type="submit" value="提交" class="opt_sub" />
<input type="reset" value="重置" class="opt_sub" />
</form>
</div>
</div>
<div id="site_link"> <a href="#">关于我们</a><span>|</span> <a href="#">Aboue Us</a><span>|</span> <a href="#">联系我们</a><span>|</span> <a href="#">广告服务</a><span>|</span> <a href="#">供稿服务</a><span>|</span> <a href="#">法律声明</a><span>|</span> <a href="#">招聘信息</a><span>|</span> <a href="#">网站地图</a><span>|</span> <a href="#">留言反馈</a> </div>
<div id="footer">
<p class="">24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888<br />
文明办网文明上网举报电话:010-627488888      举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p>
<p class="copyright">Copyright © 1999-2009 News China gov, All Right Reserver<br />
新闻中国 版权所有</p>
</div>
</body>
</html>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//乱码
request.setCharacterEncoding("utf-8");
//接受添加页面传过来的值
//新闻主题编号
int tid = Integer.valueOf( request.getParameter("ntid"));
int nid = Integer.valueOf( request.getParameter("nid"));
//新闻标题
String ntitle = request.getParameter("ntitle");
//新闻作者
String nzz = request.getParameter("nauthor");
//新闻摘要
String nzy = request.getParameter("nsummary");
//新闻内容
String nnr = request.getParameter("ncontent");
//连接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("update news set tid=?,ntitle=?,nzz=?,nzy=?,ncontent=? where nid="+nid);
//给占位符赋值
ps.setInt(1, tid);
ps.setString(2, ntitle);
ps.setString(3, nzz);
ps.setString(4, nzy);
ps.setString(5, nnr);
//ResultSet rs = ps.executeQuery();
//执行sql语句
int i = ps.executeUpdate();
if(i>0){
out.print("<script>alert('编辑成功');location.href='admin.jsp'</script>");
}else{
out.print("<script>alert('编辑失败');location.href='add_news.jsp?nid="+nid+"'</script>");
}
%>
七、新闻发布系统的添加主题
如果你新写一篇新闻,觉得没有合适的主题,就可以添加一个
add_sub.jsp以及doadd_sub.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>添加主题--管理后台</title>
<link href="../CSS/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div id="welcome">欢迎使用新闻管理系统!</div>
<div id="nav">
<div id="logo"><img src="../images/logo.jpg" alt="新闻中国" /></div>
<div id="a_b01"><img src="../images/a_b01.gif" alt="" /></div>
</div>
</div>
<div id="admin_bar">
<div id="status">管理员: 登录     <a href="#">login out</a></div>
<div id="channel"> </div>
</div>
<div id="main">
<div id="opt_list">
<ul>
<li><a href="add_news.jsp">添加新闻</a></li>
<li><a href="admin.jsp">查找新闻</a></li>
<li><a href="add_sub.jsp">添加主题</a></li>
<li><a href="update_sub.jsp">编辑主题</a></li>
</ul>
</div>
<div id="opt_area">
<h1 id="opt_type"> 添加主题: </h1>
<form action="doadd_sub.jsp" method="post">
<p>
<label> 主题: </label>
<input name="nauthor" type="text" class="opt_input" />
</p>
<input name="action" type="hidden" value="addnews">
<input type="submit" value="提交" class="opt_sub" />
<input type="reset" value="重置" class="opt_sub" />
</form>
</div>
</div>
<div id="site_link"> <a href="#">关于我们</a><span>|</span> <a href="#">Aboue Us</a><span>|</span> <a href="#">联系我们</a><span>|</span> <a href="#">广告服务</a><span>|</span> <a href="#">供稿服务</a><span>|</span> <a href="#">法律声明</a><span>|</span> <a href="#">招聘信息</a><span>|</span> <a href="#">网站地图</a><span>|</span> <a href="#">留言反馈</a> </div>
<div id="footer">
<p class="">24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888<br />
文明办网文明上网举报电话:010-627488888      举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p>
<p class="copyright">Copyright © 1999-2009 News China gov, All Right Reserver<br />
新闻中国 版权所有</p>
</div>
</body>
</html>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//乱码
request.setCharacterEncoding("utf-8");
//接受新添加的主题
String sname = request.getParameter("nauthor");
//连接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
//获取主题的下一个编号
int nextTid = 1;
PreparedStatement ps = con.prepareStatement("select max(tid) from subject");
ResultSet rs = ps.executeQuery();
if(rs.next()){
nextTid = rs.getInt(1)+1;
}
//开始添加主题
//添加新闻
ps = con.prepareStatement("insert into subject values(?,?)");
ps.setInt(1, nextTid);
ps.setString(2, sname);
int i = ps.executeUpdate();
if(i>0){
out.print("<script>alert('添加成功');location.href='admin.jsp'</script>");
}else{
out.print("<script>alert('添加失败');location.href='add_news.jsp'</script>");
}
%>
八、新闻发布系统的修改主题
update_sub.jsp以及doupdate_sub.jsp
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>修改主题--管理后台</title>
<link href="../CSS/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div id="welcome">欢迎使用新闻管理系统!</div>
<div id="nav">
<div id="logo"><img src="../images/logo.jpg" alt="新闻中国" /></div>
<div id="a_b01"><img src="../images/a_b01.gif" alt="" /></div>
</div>
</div>
<div id="admin_bar">
<div id="status">管理员: 登录     <a href="#">login out</a></div>
<div id="channel"> </div>
</div>
<div id="main">
<div id="opt_list">
<ul>
<li><a href="add_news.jsp">添加新闻</a></li>
<li><a href="admin.jsp">查找新闻</a></li>
<li><a href="add_sub.jsp">添加主题</a></li>
<li><a href="update_sub.jsp">编辑主题</a></li>
</ul>
</div>
<div id="opt_area">
<h1 id="opt_type"> 修改主题: </h1>
<form action="doupdate_sub.jsp" method="post">
主题:<select name="tid">
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("select * from subject");
ResultSet rs = ps.executeQuery();
while(rs.next()){
%>
<option value=<%=rs.getInt(1) %>><%=rs.getString(2) %></option>
<%} %>
</select>
<p>
<label> 改为: </label>
<input name="tname" type="text" class="opt_input" />
</p>
<input name="nauthor" type="hidden" value="addnews">
<input type="submit" value="提交" class="opt_sub" />
<input type="reset" value="重置" class="opt_sub" />
</form>
</div>
</div>
<div id="site_link"> <a href="#">关于我们</a><span>|</span> <a href="#">Aboue Us</a><span>|</span> <a href="#">联系我们</a><span>|</span> <a href="#">广告服务</a><span>|</span> <a href="#">供稿服务</a><span>|</span> <a href="#">法律声明</a><span>|</span> <a href="#">招聘信息</a><span>|</span> <a href="#">网站地图</a><span>|</span> <a href="#">留言反馈</a> </div>
<div id="footer">
<p class="">24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888<br />
文明办网文明上网举报电话:010-627488888      举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p>
<p class="copyright">Copyright © 1999-2009 News China gov, All Right Reserver<br />
新闻中国 版权所有</p>
</div>
</body>
</html>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//乱码
request.setCharacterEncoding("utf-8");
//接受要修改的主题
int tid = Integer.valueOf(request.getParameter("tid"));
String tname = request.getParameter("tname");
//连接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
PreparedStatement ps = con.prepareStatement("update subject set tname=? where tid="+tid);
ps.setString(1, tname);
int i = ps.executeUpdate();
if(i>0){
out.print("<script>alert('修改成功');location.href='admin.jsp'</script>");
}else{
out.print("<script>alert('修改失败');location.href='update_sub.jsp'</script>");
}
%>
九、新闻发布系统的游客浏览界面
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>新闻中国</title>
<link href="../CSS/main.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div id="top_login">
<label> 登录名 </label>
<input type="text" id="uname" value="" class="login_input" />
<label> 密  码 </label>
<input type="password" id="upwd" value="" class="login_input" />
<input type="button" class="login_sub" value="登录" onclick="login()"/>
<label id="error"> </label>
<img src="../images/friend_logo.gif" alt="Google" id="friend_logo" /> </div>
<div id="nav">
<div id="logo"> <img src="../images/logo.jpg" alt="新闻中国" /> </div>
<div id="a_b01"> <img src="../images/a_b01.gif" alt="" /> </div>
<!--mainnav end-->
</div>
</div>
<div id="container">
<div class="sidebar">
<h1> <img src="../images/title_1.gif" alt="国内新闻" /> </h1>
<div class="side_list">
<ul>
<li> <a href='#'><b> 重庆涉黑富豪黎强夫妇庭审答辩言辞相互矛盾 </b></a> </li>
<li> <a href='#'><b> 发改委:4万亿投资计划不会挤占民间投资空间 </b></a> </li>
<li> <a href='#'><b> 河南2个乡镇政绩报告内容完全一致引关注 </b></a> </li>
</ul>
</div>
<h1> <img src="../images/title_2.gif" alt="国际新闻" /> </h1>
<div class="side_list">
<ul>
<li> <a href='#'><b> 日本首相鸠山首次全面阐述新政府外交政策 </b></a> </li>
<li> <a href='#'><b> 黎巴嫩以色列再次交火互射炮弹 </b></a> </li>
<li> <a href='#'><b> 伊朗将于30日前就核燃料供应方案作出答复 </b></a> </li>
<li> <a href='#'><b> 与基地有关组织宣称对巴格达连环爆炸负责 </b></a> </li>
</ul>
</div>
<h1> <img src="../images/title_3.gif" alt="娱乐新闻" /> </h1>
<div class="side_list">
<ul>
<li> <a href='#'><b> 施瓦辛格启动影视业回迁计划 推进加州经济复苏 </b></a> </li>
<li> <a href='#'><b> 《沧海》导演回应观众质疑 自信能超越《亮剑》 </b></a> </li>
<li> <a href='#'><b> 《海角七号》导演新片开机 吴宇森等出席 </b></a> </li>
<li> <a href='#'><b> 《四大名捕》敦煌热拍 八主演飙戏火花四溅 </b></a> </li>
</ul>
</div>
</div>
<div class="main">
<div class="class_type"> <img src="../images/class_type.gif" alt="新闻中心" /> </div>
<div class="content">
<ul class="class_date">
<li id='class_month'> <a href='#'><b> 国内 </b></a> <a href='#'><b> 国际 </b></a> <a href='#'><b> 军事 </b></a> <a href='#'><b> 体育 </b></a> <a href='#'><b> 娱乐 </b></a> <a href='#'><b> 社会 </b></a> <a href='#'><b> 财经 </b></a> <a href='#'><b> 科技 </b></a> <a href='#'><b> 健康 </b></a> <a href='#'><b> 汽车 </b></a> <a href='#'><b> 教育 </b></a> </li>
<li id='class_month'> <a href='#'><b> 房产 </b></a> <a href='#'><b> 家居 </b></a> <a href='#'><b> 旅游 </b></a> <a href='#'><b> 文化 </b></a> <a href='#'><b> 其他 </b></a> </li>
</ul>
<ul class="classlist">
<li><a href='admin/news_add.html'> 深足教练组:说我们买球是侮辱 朱广沪常暗中支招 </a><span> 2009-10-28 01:03:51.0 </span></li>
<li><a href='#'> 省政府500万悬赏建业登顶 球员:遗憾主场放跑国安 </a><span> 2009-10-28 01:03:19.0 </span></li>
<li><a href='#'> 洪元硕:北京人的脸就看你们了 最后一哆嗦看着办 </a><span> 2009-10-28 01:02:56.0 </span></li>
<li><a href='#'> 临界冠军京城夺票总动员 球迷:夺冠!让所有人闭嘴 </a><span> 2009-10-28 01:02:17.0 </span></li>
<li><a href='#'> 一纸传真暗含申花处理态度 国足征调杜威突生悬疑 </a><span> 2009-10-28 01:01:47.0 </span></li>
<li class='space'></li>
<li><a href='#'> 气候变化导致海平面上升 </a><span> 2009-10-28 01:00:37.0 </span></li>
<li><a href='#'> 迟福林:“十二五”改革应向消费大国转型 </a><span> 2009-10-28 12:59:45.0 </span></li>
<li><a href='#'> 伊朗称放弃美元作为外储地位 人民币或上位 </a><span> 2009-10-28 12:58:42.0 </span></li>
<li><a href='#'> “持械抢劫,当场击毙” 浙江永康现超雷人标语 </a><span> 2009-10-28 12:58:20.0 </span></li>
<li class='space'></li>
<li><a href='#'> 国内成品油价格上调几成定局 </a><span> 2009-10-28 12:57:18.0 </span></li>
<li><a href='#'> 俄数百所幼儿园和学校因流感停课 </a><span> 2009-10-28 12:56:51.0 </span></li>
<li><a href='#'> 喀布尔市中心传出爆炸和枪声 目前原因不明 </a><span> 2009-10-28 12:56:24.0 </span></li>
<li><a href='#'> 国台办介绍大陆高校加大对台招生力度情况 </a><span> 2009-10-28 12:55:07.0 </span></li>
<li><a href='#'> 国台办将授权福建等六省市部分赴台管理审批权 </a><span> 2009-10-28 12:54:12.0 </span></li>
<li class='space'></li>
<li><a href='#'> 人保部将首次就同工同酬做出规定 </a><span> 2009-10-28 11:00:45.0 </span></li>
<li><a href='#'> 美国一名外交官辞职抗议美对阿富汗政策 </a><span> 2009-10-28 11:00:02.0 </span></li>
<li><a href='#'> 埃及交通部长因致18死火车相撞事故辞职 </a><span> 2009-10-28 10:59:38.0 </span></li>
<li><a href='#'> 无姚时代如何关注内线比拼 新赛季中锋PK五岳崛起 </a><span> 2009-10-28 10:59:07.0 </span></li>
<li class='space'></li>
<li><a href='#'> 火箭揭幕战是试金石摸底测验 五号位二选一有玄机 </a><span> 2009-10-28 10:58:36.0 </span></li>
<li><a href='#'> 时过境迁火箭优势变劣势 对抗双塔阿帅只一计可施 </a><span> 2009-10-28 10:58:11.0 </span></li>
<li><a href='#'> 无姚新赛季落寞油然而生 周遭一种改变正悄悄开始 </a><span> 2009-10-28 10:57:49.0 </span></li>
<li><a href='#'> 美媒体称小布乃火箭新核心 一大缺陷令阿帅很担心 </a><span> 2009-10-28 10:57:11.0 </span></li>
<li><a href='#'> 皮特车祸之后仍然开朗 轻松改驾四轮车(图) </a><span> 2009-10-28 10:56:43.0 </span></li>
<li class='space'></li>
<li><a href='#'> 8名美军士兵在阿富汗遭路边炸弹袭击身亡 </a><span> 2009-10-28 10:55:38.0 </span></li>
<li><a href='#'> 与基地有关组织宣称对巴格达连环爆炸负责 </a><span> 2009-10-28 10:55:14.0 </span></li>
<li><a href='#'> 伊朗将于30日前就核燃料供应方案作出答复 </a><span> 2009-10-28 10:54:54.0 </span></li>
<p align="right"> 当前页数:[1/2] <a href="#">下一页</a> <a href="#">末页</a> </p>
</ul>
</div>
<div class="picnews">
<ul>
<li> <a href="#"><img src="../images/Picture1.jpg" width="249" alt="" /> </a><a href="#">幻想中穿越时空</a> </li>
<li> <a href="#"><img src="../images/Picture2.jpg" width="249" alt="" /> </a><a href="#">国庆多变的发型</a> </li>
<li> <a href="#"><img src="../images/Picture3.jpg" width="249" alt="" /> </a><a href="#">新技术照亮都市</a> </li>
<li> <a href="#"><img src="../images/Picture4.jpg" width="249" alt="" /> </a><a href="#">群星闪耀红地毯</a> </li>
</ul>
</div>
</div>
</div>
<div id="friend">
<h1 class="friend_t"> <img src="../images/friend_ico.gif" alt="合作伙伴" /> </h1>
<div class="friend_list">
<ul>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
<li> <a href="#">中国政府网</a> </li>
</ul>
</div>
</div>
<div id="footer">
<p class=""> 24小时客户服务热线:010-68988888      <a href="#">常见问题解答</a>      新闻热线:010-627488888 <br />
文明办网文明上网举报电话:010-627488888      举报邮箱: <a href="#">jubao@jb-aptech.com.cn</a> </p>
<p class="copyright"> Copyright © 1999-2009 News China gov, All Right Reserver <br />
新闻中国 版权所有 </p>
</div>
</body>
</html>