收藏本站 
广告服务 
网站地图 
>> 我们从网络和杂志上收集了近100000余篇各类电脑技术、网络技术、软件技术等方面的文章教程,我们的收录原则:不是精华拒不收录!
先飞电脑技术网技术文章
制作自己网站的每日更新内容列表
[ 作者:佚名    转贴自:网络转载    阅读次数:3    更新时间:2007-7-16 10:51:00   录入:刘光勇 ]        
    每日更新是什么东东我想大家也都应该知道吧 9Q>R#d8?  
其实有点象现在很多新闻网站的更新,下面介绍如何让你的 t>A\03<  
网站的内容每天自动更新 SQL? \t^  
下面的代码适用于: YAOV!@>  
1.使用任何ODBC兼容的数据库 _sx b  
2.很方便的插入到你现有的ASP程序中 R^QKEyCn  
如何保存更新内容呢? t89@|o"i  
数据库结构:(一共三个字段) Dxm[7B^D  
QuoteID(Long ),Quote(String ),Author(String) Ma/="mNI  
下面一个技巧是如何让更新显示在任意一个页面上呢? t.7NI\'\  
我们只要把更新内容和作者当返回值送给调用的页面即可。 Lv1_bYi./p  
代码如下,其中logic是一个随机数,表示随机从数据库中显示哪个记录: %Y;@55h6}  
<% jrO_U :  
Sub GetQuote(byVal strQuote, byval strAuthor) #A}*h!&E  
Dim intMaxID K^F6_)z  
Dim intRecordID *9;O(agDF  
dim strSQL E-QtBDp8  
Dim oConn ,5(#84"P  
Dim oRS |DT"mv  
2b(cj0T~  
set oConn = Server.CreateObject("ADODB.Connection") =_I Sy  
oConn.Open "Database=mydb;DSN=Quotes;UID=sa;Password=;" $248o5W~n  
Q'3!w,*>  
strSQL = "SELECT MaxID=max(QuoteId) from Quotes" -pbs#.bR  
Set oRS = oConn.Execute(strSQL) VG \:3l~H  
If oRS.EOF Then EeI(_R\  
strQuote = "站长太懒了,今天没有更新内容." k"=|QA y  
strAuthor = "呵呵" (UiGocNx  
Exit Sub d:zQo%R[;  
Else A3|I( 47  
intMaxID = oRS("MaxID") ]O1 2Hl.tH  
End If Y&y42bm  
+Oq6O"eW  
Randomize $w;RHfrEd  
intRecordID= Int(Rnd * intMaxID) + 1 -`jQJq|%E$  
strSQL = "Select * from quotes where QuoteID=" & intRecordID & ";" Er3M'@*  
Set oRS = oConn.Execute(strSQL) W5LwplO,  
If oRS.EOF Then D[_N3ts#9  
strQuote = "站长太懒了,今天没有更新内容." =>yC&wq?2  
strAuthor = "呵呵" fN)9W/DjC  
Exit Sub f=QJQ@4x  
Else [7 vrslVcB  
oRS.MoveFirst Z~ &ya2   
strQuote = oRS("Quote") uq&h@["c7  
strAuthor = oRS("Author") '0(TLXAn  
End If A}vC6(6"  
>WK8!}U\A  
oRS.Close ,m>(,^&  
oConn.Close g4}g,o |  
Set oRS = Nothing {k<1)!]G_  
set oConn = Nothing U8eGnC<k  
End Sub 4{C8hFi2  
%> ttvdJ=q  
_*+Q`3q  
其实在程序中如果使用一个嵌套的SQL能够提高性能,例如这样 2OJxL"mEc  
Select * from Quotes where QuoteID = (Select int ( RND * Max(QuoteID) ) from Quotes ); >e-eDrix  
可是问题是有些数据库的随机数函数是RAND而不是RND, OU7q^"  
如果要是你自己用的话,那当然可以使用这句话代替我上面介绍的方法, _P)kKV  
可别忘了,要是别人的数据库不支持RAND怎么办,呵呵。 t jtfC6 P  
再说了,现在是在讲ASP技术,而不是在讲SQL技术,呵呵。 \tC kx/@  
现在我们将上面的代码保存到一个名叫quotes.inc的文件中来, [WsGb<l  
下面就举一个如何调用它的例子把: k$`:I}^e  
<HTML> /0EyUK#q  
<HEAD> }" S3VU  
<TITLE>例子</TITLE> [}<Km\\N  
<!--#include virtual = "quotes.inc" --> zv/~nc$  
</HEAD> d`d *;R  
<BODY> 5+Q##i   
<BR><BR> F\Go>&  
<% M%JD  
Dim strQuote *IgA}&,  
Dim strAuthor q<h9GCA%@  
GetQuote(strQuote, strAuthor) b cmfeu}  
%> -A4LP~,L  
<TABLE BORDER=0 CELLPADDING=6 CELLSPACING=5 BGCOLOR="#000000" WIDTH=500> HlYaUK}2Rh  
<TR BGCOLOR="#CCCCCC"> 8liZEC]w2&  
<TD ALIGN=CENTER> <o ~Uqv_  
<B>"<% =strQuote %>" <BR>--<I><% =strAuthor %></I></B> Z<:n="w?X  
</TD> /%~btMt~  
</TR> @K0|7ThNl  
</TABLE> eJC7*7  
<BR><BR> ^exrh}*4  
</BODY> (&JLX 2)C  
</HTML> H;q}k{Yn  
其实你可以再加强点它的功能: .~Fk]Kr=  
1.可以在子过程中给返回的字符串带上格式,这样显示会更加漂亮 82E1^F  
2.将这个代码做成一个组件来调用 =SRI"%38FT  
3.使用一个文本文件来代替数据库 a 4~tot  
4.将SQL放到存储过程中去
上一篇:完整纪录站内所有网页点选次数  下一篇: 没有了  
网站主页 | 收藏本页 | 联系我们 | 广告服务 | 站点地图 | 会员注册 | 招聘信息 | 内容指正

联系QQ:先飞电脑技术网站事务联系QQ,点击可以直接留言. 32933427 电话:13710542091 [世界排名] 鄂ICP备05005890号