asp

位置:IT落伍者 >> asp >> 浏览文章

ASP方便实现网站的每日更新


发布日期:2024年05月11日
 
ASP方便实现网站的每日更新

使用ASP方便的建立自己网站的每日更新

每日更新是什么东东我想大家也都应该知道把其实有点象现在很多新闻网站的更新下面介绍如何让你的网站的内容每天自动更新下面的代码适用于

使用任何ODBC兼容的数据库

很方便的插入到你现有的ASP程序中

如何保存更新内容呢?

数据库结构(一共三个字段)QuoteID(Long )Quote(String )Author(String)

下面一个技巧是如何让更新显示在任意一个页面上呢?

我们只要把更新内容和作者当返回值送给调用的页面即可代码如下其中logic是一个随机数表示随机从数据库中显示哪个记录

<%

Sub GetQuote(byVal strQuote byval strAuthor)

Dim intMaxID&

Dim intRecordID

dim strSQL&

Dim oConn&

Dim oRS

set oConn = ServerCreateObject(ADODBConnection)

oConnOpen Database=mydb;DSN=Quotes;UID=sa;Password=;

strSQL = SELECT MaxID=max(QuoteId) from Quotes

Set oRS = oConnExecute(strSQL)

If oRSEOF Then

strQuote = 站长太懒了今天没有更新内容

strAuthor = 呵呵

Exit Sub

Else

intMaxID = oRS(MaxID)

End If

Randomize

intRecordID= Int(Rnd * intMaxID) +

strSQL = Select * from quotes where QuoteID= & intRecordID & ;

Set oRS = oConnExecute(strSQL)

If oRSEOF Then

strQuote = 站长太懒了今天没有更新内容

strAuthor = 呵呵

Exit Sub

Else

oRSMoveFirst

strQuote = oRS(Quote)

strAuthor = oRS(Author)

End If

oRSClose

oConnClose

Set oRS = Nothing

set oConn = Nothing

End Sub

%>

其实在程序中如果使用一个嵌套的SQL能够提高性能例如这样

Select * from Quotes where QuoteID = (Select int ( RND * Max(QuoteID) ) from Quotes );

可是问题是有些数据库的随机数函数是RAND而不是RND如果要是你自己用的话那当然可以使用这句话代替我上面介绍的方法可别忘了要是别人的数据库不支持RAND怎么办呵呵

再说了现在是在讲ASP技术而不是在讲SQL技术呵呵现在我们将上面的代码保存到一个名叫quotesinc的文件中来下面就举一个如何调用它的例子把

<HTML>

<HEAD>

<TITLE>例子</TITLE>

<!#include virtual = quotesinc >

</HEAD>

<BODY>

<BR><BR>

<%

Dim strQuote

Dim strAuthor

GetQuote(strQuote strAuthor)

%>

<TABLE BORDER= CELLPADDING= CELLSPACING= BGCOLOR=# WIDTH=>

<TR BGCOLOR=#CCCCCC>

<TD ALIGN=CENTER>

<B><% =strQuote %> <BR><I><% =strAuthor %></I></B>

</TD>

</TR>

</TABLE>

<BR><BR>

</BODY>

</HTML>

其实你可以再加强点它的功能

可以在子过程中给返回的字符串带上格式这样显示会更加漂亮

将这个代码做成一个组件来调用

使用一个文本文件来代替数据库

将SQL放到存储过程中去

上一篇:asp 日期格式化函数

下一篇:详解ASP脚本的执行顺序