Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alex_ps

Notícia aleatória + função limita texto

Recommended Posts

Moçada, boa tarde!

 

É o seguinte,

Estou montando uma apresentação de notícias, que seleciono e busco de um banco Access.

Até aí, beleza!

Peguei aqui no forum um scripts que faz a escolha aleatória do conteúdo, e importante, que não repete a escolha, em uma sequência de 2, 3, 4, etc, exibições, de acordo com meu interesse.

Até aí beleza!

Peguei também na Net, um script que limita o número de caracteres de um texto selecionado, que era uma função e por eu não conseguir fazê-la funcionar, fiz uma gambiarra e tava funcionando, para exibir um caso único.

Agora que precisei usar mais que um caso, ex

 

Foto - Notícia

Foto - Notícia

Foto - Notícia

 

A seleção é feita, e as fotos ficam OK, mas o texto empepina e repete, pois eu não sei fazer esta bendita função. :(

 

Vocês podem dar uma olhada no Frank, por favor?

Valeu!

 

Alex_ps

 

<%Dim Executar, DBDim RSDim ValoresDim ArraySplitDim xDim iDim sIDDim rsmostraDim txtDim vCrtDim ulDim vExibeSet DB = Server.CreateObject("ADODB.Connection")DB.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=c:\domains\mydomain.com\db\noticias.mdb"Set RS = DB.Execute("SELECT * FROM noticias where fotostate='sim' ORDER BY DESC")For i = 1 to 2'Randomiza os ids(codigos) existentes no BDDo Until RS.EOF or RS.BOFValores = Valores & RS("ID") & ","RS.MovenextLoopArraySplit = Split(Left(Valores,Len(Valores)-1),",")Randomizex = CInt(Rnd()*Ubound(ArraySplit))sID = ArraySplit(x)'Mostra os dados de acordo com o ID(codigo) sorteadoSet rsMostra = DB.Execute("SELECT * FROM noticias where ID=" & sID)%>  <table width="100%" height="90" border="0"><tr><td width="35%" height="50%" valign="top"><img src="../noticias/fotos/<%=rsMostra("foto")%>" width="108" height="81"></td><td width="65%" valign="top"><div style="font-family: verdana, arial; font-size: 9px; color: #606060"><b><%=rsMostra("titulo")%></b></div><div style="font-family: verdana, arial; font-size: 9px; color: #606060"><! -- XXXXXXXXXX   Aqui é o pepino XXXXXXXXXXXXX    --><%set txt=rsMostra("noticia")  <!-- Isto era uma função-->vCrt=130if Len(txt) <= vCrt thenresponse.write (left(txt,vCrt))elsewhile not ul=" " or vCrt=len(txt)vExibe = left(txt,vCrt)ul= right(vExibe,1)vCrt=vCrt+1wendif vCrt=len(txt) thenResponse.Write(txt)elsevExibe=left(vExibe,(len(vExibe)-1))&"..."Response.Write(vExibe)end ifend if%></div></td></tr><%Next%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso pode ser erro na rotina de randomização.

Quer um jeito MUITO mais FÁCIL de randomizar seus dados? Faça assim:

Set RS = DB.Execute("SELECT * FROM noticias where fotostate='sim' ORDER BY NEWID()")
Pronto...voce tem sua consulta com dados randomizados.

Uma dica: Não use o * para fazer as suas consultas, coloque o nome de todos os campos que você irá usar mesmo você usando TODOS eles. Isso melhora a performance da sua instrução ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.