Jump to content


Photo

Sorteio Registros


  • Faça o login para participar
2 replies to this topic

#1 Qwert133

Qwert133

    Normal

  • Usuários
  • 89 posts
  • Sexo:Não informado

Posted 27/04/2004, 22:30

Eu tenho um codigo de sistema de fotos, onde eu quero que ele randomize os registros da tabela e não repita até chegar ao fim, pois o sistema é de votação, ai quando vc vai votando vai passando as fotos, tipo, :

Das fotos não repeti já está funcionando, passa todas as fotos cadastradas e quando termina vai para uma outra página,

O unico problema agora que tenho é fazer com q as fotos não fique na mesma ordem toda vez, assim:

ela fica na ordem de cadastro: foto1, foto2, foto3, foto4...

eu queria colocar para ela aparecer randomizado...

o codigo é esse:

<%
Dim rsRandPic
Dim rsRandPic_numRows
Dim strSql
If Request.QueryString("iPic") <> "" Then
strSql = "SELECT * FROM PICTURES WHERE PIC_APPROVED = 1 AND PIC_ID > " & Request.QueryString("iPic") & " ORDER BY PIC_ID ASC"
Else
strSql = "SELECT * FROM PICTURES WHERE PIC_APPROVED = 1 ORDER BY PIC_ID ASC"
End If
%>
<%
Set rsRandPic = Server.CreateObject("ADODB.Recordset")
rsRandPic.ActiveConnection = MM_connDUpics_STRING
rsRandPic.Source = strSql
rsRandPic.CursorType = 0
rsRandPic.CursorLocation = 2
rsRandPic.LockType = 1
rsRandPic.Open()

rsRandPic_numRows = 0
%>

<%
If rsRandPic.EOF or rsRandPic.BOF then
Response.Redirect("view.asp")
End If
%>

<%
Dim imgWidth, imgHeight, imgPercent, imgFixWidth, imgFixHeight
imgWidth = rsRandPic.Fields.Item("PIC_WIDTH").Value
imgHeight = rsRandPic.Fields.Item("PIC_HEIGHT").Value
imgFixWidth = 618
imgPercent = (imgFixWidth/imgWidth)
imgFixHeight= (imgHeight*imgPercent)
%>

<link href="assets/DUpics.css" rel="stylesheet" type="text/css">
<script LANGUAGE="JavaScript">

<!-- Begin
function OpenImage(img){
foto1= new Image();
foto1.src=(img);
Controlla(img);
}
function Controlla(img){
if((foto1.width!=0)&&(foto1.height!=0)){
viewFoto(img);
}
else{
funzione="Controlla('"+img+"')";
intervallo=setTimeout(funzione,20);
}
}
function viewFoto(img){
largh=foto1.width+20;
altez=foto1.height+20;
stringa="width="+largh+",height="+altez;
finestra=window.open(img,"",stringa);
}
// End -->
</script>

pagina, que a votação redirecionar:

<%
set cmdVoting = Server.CreateObject("ADODB.Command")
cmdVoting.ActiveConnection = MM_connDUpics_STRING
cmdVoting.CommandText = "UPDATE PICTURES SET PIC_VOTE_COUNT = PIC_VOTE_COUNT + 1, PIC_VOTE_VALUE = PIC_VOTE_VALUE + " & Request.Form("voteValue") & " WHERE PIC_ID = " & Request.Form("iPic")
cmdVoting.CommandType = 1
cmdVoting.CommandTimeout = 0
cmdVoting.Prepared = true
cmdVoting.Execute()

Response.Cookies(Request.Form("iPic")) = Request.Form("voteValue")
Response.Cookies(Request.Form("iPic")).Expires = Date + 1000
Response.Redirect "default.asp?iPic=" & Request.Form("iPic")
%>

Eu acho que é aqui, que tem que mudar alguma coisa, no
Response.Redirect "default.asp?iPic=" & Request.Form("iPic")
pois é nele que as fotos vão passando, aqui que teria q randomizar;

Edição feita por: Qwert133, 27/04/2004, 23:05.


#2 lgiesel

lgiesel

    Novato no fórum

  • Usuários
  • 20 posts
  • Sexo:Não informado

Posted 27/04/2004, 23:10

pesquise pela função
Randomize()

[]'s
lgiesel

#3 Zóio

Zóio
  • Visitantes

Posted 28/04/2004, 09:40

dim sql, rsusuarios
sql = "SELECT * FROM sorteios"
Set RSusuarios = Server.CreateObject("ADODB.Recordset")
RSusuarios.CursorType = 3
RSusuarios.CursorLocation = 3
RSusuarios.LockType = 3
RSusuarios.Open sql, conn

Dim Arr()
Dim i, RowCount
RowCount = RSusuarios.RecordCount
Redim Arr(RowCount - 1)
For i=0 to RowCount -1
	Arr(i) = RSusuarios("idusuario")
	RSusuarios.MoveNext
Next

Randomize
perg_id = Arr(Int((Ubound(arr) + 1) * rnd))
Session("usuario")=perg_id

DÁ UMA OLHADA AE MEW.... ESSA FUNÇÃO RAMDOMIZA OS USUARIOS, É SÓ VC ALTERAR PELO QUE QUISER, BLZ!!!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq