|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。 后面讲述了关于文章办理体系的暗码及暗码验证,经由过程暗码验证可以限制普通阅读者所能进入的页面,这里所要限制的就是通俗用户所不克不及进入的页面,也就是包含办理页面、删除文章页面、修正文章页面和修正用户信息和修正栏目信息的页面。其实这里的主办理页面就是和文章办理体系的主页面相似的页面,只是在外面添加了一些有关办理内容的毗连,以便利办理者对文章停止在线的修正删除等操作。
上面就为人人引见这一页面的次要法式内容,因为它和文章办理的主页面差不多,所以这里只是把其法式写出来,并注明和主页面分歧的中央,其他不异的局部请人人参考本专题的第七节!
文件manage.asp
"翻开数据库毗连
<!--#include file="conn.asp"-->
<%
"限制非办理用户进入,这个在本专题的第七节有引见
if request.cookies("adminok")="" then
response.redirect "login.asp"
end if
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>ASP技能专题</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<link rel="stylesheet" type="text/CSS" href="style.css">
<script language="javascript">
function popwin2(id,path)
{ window.open("openarticle.asp?id="+id+"&ppath="+path,"","height=450,width=600,resizable=yes,scrollbars=yes,status=no,toolbar=no,menubar=no,location=no");
}
</script>
</head>
<%
const MaxPerPage=18
dim totalPut
dim CurrentPage
dim TotalPages
dim i,j
if not isempty(request("page")) then
currentPage=cint(request("page"))
else
currentPage=1
end if
dim sql
dim rs
dim rstype
dim typesql
dim typeid,typename
if not isEmpty(request("typeid")) then
typeid=request("typeid")
else
typeid=1
end if
set rstype=server.createobject("adodb.recordset")
typesql="select * from type where typeID="&cstr(typeid)
rstype.open typesql,conn,1,1
if not rstype.eof then
typename=rstype("type")
end if
rstype.close
set rstype=nothing
%>
<body>
<div align="center"><center>
<table border="0" width="92%" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" style="border-left: thin dotted rgb(0,128,0); border-right: thin dotted rgb(0,128,0)"><p align="center"><br>
动网ASP技能专题>><font color="#FF0000"><%response.write ""&typename&""%></font><br>
<center>
<a href="manage.asp?typeid=1">ASP教程</a>|<a href="manage.asp?typeid=2">ASP FAQ</a>|<a href="manage.asp?typeid=3">ASP文摘</a>
|<a href="manage.asp?typeid=4">ASP实例</a>|<a href="manage.asp?typeid=5">ASP平安</a>|
"显示体系办理页面相干毗连,用于修正办理员暗码称号和增添修正删除栏目,这个在前面将有引见
<a href="changepass.asp" title="用于修正办理员暗码称号和增添修正删除栏目"><font color=red>办理页面</font></a>
<div align="center"><%
sql="select * from article where typeid="+cstr(typeid)+" order by data desc"
Set rs= Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
if rs.eof and rs.bof then
response.write "<p align='center'> 还 没 有 任 何 文 章</p>"
else
totalPut=rs.recordcount
totalPut=rs.recordcount
if currentpage<1 then
currentpage=1
end if
if (currentpage-1)*MaxPerPage>totalput then
if (totalPut mod MaxPerPage)=0 then
currentpage= totalPut \ MaxPerPage
else
currentpage= totalPut \ MaxPerPage + 1
end if
end if
if currentPage=1 then
showpage totalput,MaxPerPage,"manage.asp"
showContent
showpage totalput,MaxPerPage,"manage.asp"
else
if (currentPage-1)*MaxPerPage<totalPut then
rs.move (currentPage-1)*MaxPerPage
dim bookmark
bookmark=rs.bookmark
showpage totalput,MaxPerPage,"manage.asp"
showContent
showpage totalput,MaxPerPage,"manage.asp"
else
currentPage=1
showpage totalput,MaxPerPage,"manage.asp"
showContent
showpage totalput,MaxPerPage,"manage.asp"
end if
end if
rs.close
end if
set rs=nothing
conn.close
set conn=nothing
sub showContent
dim i
i=0
%>
<div align="center"><center><table border="1" cellspacing="0" width="589" bordercolorlight="#000000" bordercolordark="#FFFFFF" cellpadding="0">
<tr>
<td width="46" align="center" bgcolor="#D0D0D0" height="20"><strong>ID号</strong></td>
<td width="400" align="center" bgcolor="#D0D0D0"><strong>文章题目</strong></td>
<td width="69" align="center" bgcolor="#D0D0D0"><strong>修正</strong></td>
<td width="68" align="center" bgcolor="#D0D0D0"><strong>删除</strong></td>
</tr>
<%do while not rs.eof%>
<tr>
<td height="23" width="46"><p align="center"><%=rs("articleid")%></td>
<td width="400"><p align="center"><a href="javascript:popwin2(<%=rs("articleid")%>)"><%=rs("title")%></a></td>
"显示与修正删除的相干毗连,详细法式在前面章节将有引见
<td width="69"><p align="center"><a
href="edit.asp?id=<%=rs("articleid")%>">修正</a></td>
<td width="68"><p align="center"><a
href="delete.asp?id=<%=rs("articleid")%>">删除</a></td>
</tr>
<% i=i+1
if i>=MaxPerPage then exit do
rs.movenext
loop
%>
</table>
</center></div><%
end sub
function showpage(totalnumber,maxperpage,filename)
dim n
if totalnumber mod maxperpage=0 then
n= totalnumber \ maxperpage
else
n= totalnumber \ maxperpage+1
end if
response.write "<form method=Post action="&filename&"?typeid="&typeid&">"
"显示增添文章相干毗连,关于添加文章在本专题的第1、二节有引见
response.write "<p align='center'><a href='addarticle.asp?typeid="&typeid&"'><font color='red'>增添文章</font></a> "
if CurrentPage<2 then
response.write "<font color='#000080'>首页 上一页</font> "
else
response.write "<a href="&filename&"?page=1&typeid="&typeid&">首页</a> "
response.write "<a href="&filename&"?page="&CurrentPage-1&"&typeid="&typeid&">上一页</a> "
end if
if n-currentpage<1 then
response.write "<font color='#000080'>下一页 尾页</font>"
else
response.write "<a href="&filename&"?page="&(CurrentPage+1)&"&typeid="&typeid&">"
response.write "下一页</a> <a href="&filename&"?page="&n&"&typeid="&typeid&">尾页</a>"
end if
response.write "<font color='#000080'> 页次:</font><strong><font color=red>"&CurrentPage&"</font><font color='#000080'>/"&n&"</strong>页</font> "
response.write "<font color='#000080'> 共<b>"&totalnumber&"</b>篇文章 <b>"&maxperpage&"</b>篇文章/页</font> "
response.write " <font color='#000080'>转到:</font><input type='text' name='page' size=4 maxlength=10 class=smallInput value="¤tpage&">"
response.write "<input class=buttonface type='submit' value='Goto' name='cndok'></span></p></form>"
end function
%>
</div></td>
</tr>
</table>
</center></div>
</body>
</html>
ASP由于使用了COM组件所以它会变的十分强大,但是这样的强大由于Windows NT系统最初的设计问题而会引发大量的安全问题。只要在这样的组件或是操作中一不注意,哪么外部攻击就可以取得相当高的权限而导致网站瘫痪或者数据丢失; |
|