动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP实例
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ ASP实例 ]的信息

本月文章推荐
.利用ASP在客户端注册DLL文件.
.基于ACCESS数据库的纯asp论坛制作.
.怎样做自己的二级域名(之三).
.使用InstallShield制作ASP安装程.
.2栏分页显示(附显示的形式前页,.
.用Asp隐藏文件路径实现防盗链.
.在ASP应用中验证用户身份(2).
.bbs的数据结构和存储过程(三).
.ASP进阶之文章在线管理更新(13).
.根据需要动态include不同的文件.
.制作我们自己的Ebay(拍卖系统)(8).
.用ASP、VB和XML建立互联网应用程.
.在VB中利用Word宏命令开发ASP组件.
.使用 ASP+ 列表绑定控件(中).
.用ASP+SQL Server为网页建一道防.
.将HTML表单数据存储为XML格式 - 2.
.用ASP实现远程批量文件改名.
.用ASP实现对Web搜索引擎Index Se.
.用asp怎样编写文档搜索页面(1).
.构建免受FSO组件威胁虚拟主机 .

bbs的数据结构和存储过程(三)

发表日期:2001-8-28 |


/*************************************************************************/
/* */
/* procedure : up_GetPostedTopicList */
/* */
/* Description: 精华区贴子列表 */
/* */
/* Parameters: @a_intForumID : 版面id */
/* @a_intPageNo: 页号 */
/* @a_intPageSize: 每页显示数,以根贴为准 */
/* */
/* Use table: bbs , forum */
/* */
/* Author: bigeagle@163.net */
/* */
/* Date: 2000/2/14 */
/* */
/* History: */
/* */
/*************************************************************************/
if exists(select * from sysobjects where id = object_id('up_GetPostedTopicList'))
drop proc up_GetPostedTopicList
go

create proc up_GetPostedTopicList
@a_intForumID int ,
@a_intPageNo int ,
@a_intPageSize int
as
/*定义局部变量*/
declare @intBeginID int
declare @intEndID int
declare @intRootRecordCount int
declare @intPageCount int
declare @intRowCount int
/*关闭计数*/
set nocount on

/*检测是否有这个版面*/
if not exists(select * from forum where id = @a_intForumID)
return (-1)

/*求总共根贴数*/
select @intRootRecordCount = count(*) from bbs where posted=1 and forumid=@a_intForumID
if (@intRootRecordCount = 0) --如果没有贴子,则返回零
return 0

/*判断页数是否正确*/
if (@a_intPageNo - 1) * @a_intPageSize > @intRootRecordCount
return (-1)

/*求开始rootID*/
set @intRowCount = (@a_intPageNo - 1) * @a_intPageSize + 1
/*限制条数*/
set rowcount @intRowCount
select @intBeginID = rootid from bbs where posted=1 and forumid=@a_intForumID
order by id desc

/*结束rootID*/
set @intRowCount = @a_intPageNo * @a_intPageSize
/*限制条数*/
set rowcount @intRowCount
select @intEndID = rootid from bbs where posted=1 and forumid=@a_intForumID
order by id desc

/*恢复系统变量*/
set rowcount 0
set nocount off

select a.id , a.layer , a.forumid , a.subject , a.faceid , a.hits , a.time , a.UserID , a.fatherid , a.rootid ,
'Bytes' = datalength(a.content) , b.UserName , b.Email , b.HomePage , b.Signature , b.Point
from bbs as a join BBSUser as b on a.UserID = b.ID
where posted=1 and Forumid=@a_intForumID and a.rootid between @intEndID and @intBeginID
order by a.rootid desc , a.ordernum desc
return(@@rowcount)
--select @@rowcount
go
select id , rootid , fatherid , forumid , posted from bbs
up_getpostedtopiclist 3 ,1 , 20
/*************************************************************************/
/* */
/* procedure : up_GetTopic */
/* */
/* Description: 取贴子 */
/* */
/* Parameters: @a_intTopicID : 贴子id */
/* */
/* Use table: bbs */
/* */
/* Author: bigeagle@163.net */
/* */
/* Date: 2000/2/16 */
/* */
/* History: */
/* */
/*************************************************************************/
if exists(select * from sysobjects where id = object_id('up_GetTopic'))
drop proc up_GetTopic
go

create proc up_GetTopic @a_intTopicID int
as
/*如果没有这贴子*/
if not exists (select * from bbs where id = @a_intTopicID)
return (-1)

/*更新该贴的点击数*/
update bbs set hits = hits + 1 where id = @a_intTopicID

select a.* , 'Bytes' = datalength(a.content) ,
b.UserName , b.Email , b.Homepage , b.point , b.Signature
from bbs as a join BBSUser as b on a.UserID = b.id
where a.id = @a_intTopicID
go

up_getTopic 11

/*************************************************************************/
/* */
/* procedure : up_DeleTopic */
/* */
/* Description: 删除贴子及子贴,更新发贴人信息 */
/* */
/* Parameters: @a_intTopicID : 贴子id */
/* */
/* Use table: bbs */
/* */
/* Author: bigeagle@163.net */
/* */
/* Date: 2000/2/24 */
/* */
/* History: */
/* */
/*************************************************************************/

if exists(select * from sysobjects where id = object_id('up_DeleTopic'))
drop proc up_DeleTopic
go

create proc up_DeleTopic @a_intTopicID int
as

/*定义局部变量*/
declare @intRootID int
declare @intLayer int
declare @floatOrderNum float(53)
declare @floatNextOrderNum float(53)
declare @intCounts int
declare @intForumID int

/*取消计数*/
set nocount on

/*首先查找这个贴子的rootid和ordernum,没有则返回*/
select @intRootID = RootID ,
@floatOrderNum = OrderNum ,
@intLayer = layer ,
@intForumID = forumid
from bbs where id = @a_intTopicID
if @@rowcount = 0
return (-1)

/*取下一个同层贴子的ordernum*/
select @FloatNextOrderNum = isnull(max(ordernum) , 0)
from bbs
where RootID=@intRootID
and layer=@intLayer and ordernum < @floatOrderNum

/*多表操作,用事务*/
begin transaction

/*首先删贴*/

delete from bbs
where rootid=@intRootID and ordernum > @floatNextOrderNum
and ordernum <= @floatOrderNum
select @intCounts = @@rowcount
if (@@error != 0)
goto Error



/*论坛贴子数减少*/
update forum set topiccount = topiccount - @intCounts where id=@intForumID
if (@@error != 0)
goto Error

/*完成事务,返回*/
commit transaction
set nocount off
return(0)

Error:
rollback transaction
set nocount off
return (-1)
go

select forumid from bbs
update bbs set forumid=4

/*************************************************************************/
/* */
/* procedure : up_GetUserInfo */
/* */
/* Description: 取得发贴人信息 */
/* */
/* Parameters: @a_strUserName : 用户笔名 */
/* */
/* Use table: bbsuser */
/* */
/* Author: bigeagle@163.net */
/* */
/* Date: 2000/4/16 */
/* */
/* History: */
/* */
/*************************************************************************/
if exists(select * from sysobjects where id = object_id('up_GetUserInfo'))
drop proc up_GetUserInfo
go

create proc up_GetUserInfo @a_strUserName varchar(20)
as
declare @m_intOrder int --排名
declare @m_intPoint int --积分

set nocount on

/*如果没有找到该用户,则返回-1*/
select @m_intPoint = point from bbsuser where username=@a_strUserName
if(@@rowcount = 0)
return(-1)

/*求排名*/
select @m_intOrder = count(*) + 1 from bbsuser where point > @m_intPoint

select * , 'order' = @m_intOrder from bbsuser where username=@a_strUserName

set nocount off
go
up_getuserinfo '廖家远'

/*************************************************************************/
/* */
/* procedure : up_PostedTopic */
/* */
/* Description: 将贴子转入精华区 */
/* */
/* Parameters: @a_intTopicID 贴子id */
/* */
/* Use table: bbs, postedtopic */
/* */
/* Author: bigeagle@163.net */
/* */
/* Date: 2000/4/17 */
/* */
/* History: */
/* */
/*************************************************************************/

if exists(select * from sysobjects where id= object_id('up_postedtopic'))
drop proc up_postedtopic
go

create proc up_PostedTopic @a_intTopicID int
as
/*定义局部变量*/
declare @m_intUserID int --发贴人ID

/*查找是否有这个贴子*/
select @m_intUserID = userid from bbs where id = @a_intTopicID
if(@@rowcount != 1)
return -1

/*因为对两个表操作所以用事务*/
begin transaction
update bbs set posted = 1 where id = @a_intTopicID
if(@@error <> 0)
goto Error
update bbsuser set point = point + 3 where id = @m_intUserID
if(@@error <> 0)
goto Error
Commit transaction
return (0)
Error:
rollback transaction
go


上一篇:bbs的数据结构和存储过程(二) 人气:10683
下一篇:ASP编写完整的一个IP所在地搜索类 人气:12572
浏览全部bbs的数据结构和存储过程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-12 team论坛 v2.0.4 bulid 080916 A
2008-10-12 Roclog v3.1.6
2008-10-12 SupeV v1.0.1 简体中文 GBK
2008-10-12 NetCMS v1.6.0.1010 正式版
2008-10-12 PHP考试系统PPFrame v1.2.7
2008-10-12 LPAS个人相册 v1.6.3
2008-10-12 快问仿百度知道系统 动态-静态-互
2008-10-12 方卡广告防点击系统 V1.0 GB2312
2008-10-12 泡菜内容管理系统[PCMS] v1.0 Bu
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成