Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Procurando como não fazer banners repetirem num sistema, encontrei esse codigo:
<%
Sub Rnd_Banner()
Dim strSQL
Dim strBanners
Dim intCounter
Dim intID
Dim strDisplay
Dim strDefault
intCounter = 0
strDefault = "default.gif" 'AQUI você COLOCA UM BANNER DEFAULT P/ CASO DA TBLA ESTAR VAZIA!
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("banners.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn
set rs = server.createobject("adodb.recordset")
strSQL = "SELECT * FROM banners ORDER BY ID"
rs.open strSQL, conn
If not rs.EOF Then
strBanners = rs.getrows()
rs.movefirst
Do While Not rs.EOF
intCounter = intCounter + 1
rs.movenext
Loop
If intCounter < 2 Then
strDisplay = "<a href="&strBanners(2,0)&" target=new><img src="&strBanners(1,0)&"></a>"
Else
Randomize
intID = Int(Rnd * intCounter)
strDisplay = "<a href="&strBanners(2,intID)&" target=new><img src="&strBanners(1,intID)&"></a>"
End Ifrs.close
set rs = nothing
set conn = nothing
Response.Write(strDisplay)
End Sub
%>
Então, aguém poderia me ajudar a compreender o que esse trecho:
If intCounter < 2 Then
strDisplay = "<a href="&strBanners(2,0)&" target=new><img src="&strBanners(1,0)&"></a>"
Else
Randomize
intID = Int(Rnd * intCounter)
strDisplay = "<a href="&strBanners(2,intID)&" target=new><img src="&strBanners(1,intID)&"></a>"
End IfMeu sistema de banners nao repete, mas gravo o ultimo exibido num BD e carrega muito porque são varios acessos.
Valeu pessoar!
Hargon,
Deixa eu ver se entendi....
esse 2,0 ou 2,intID seria um tipo de matriz ou passagem de parametros ao BD?
Seria tipo uma matriz.
O 2 você está identificando a coluna que você quer pegar e o intID seria a linha.
Já entendi tudo!
É que o cara que fez esse codigo esqueceu de declarar no sql quais campos estava pegando, se tivesse feito tipo:
strSQL = "SELECT id, imagem, url FROM banners ORDER BY ID"ficaria bem mais facil de entender.
Valeu Hargon! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
Realmente facilitaria. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
strBanners(2,intID) está relacionado ao BD sim. Você armazena todos registros em strBanner, e depois indica qual registro quer pegar.