Foros del Web » Programando para Internet » ASP Clásico »

como hacer lista topten ordenada en base a votos

Estas en el tema de como hacer lista topten ordenada en base a votos en el foro de ASP Clásico en Foros del Web. Hola, quisiera saber si a alguien se le ocurre como podria hacer esto: Tengo que armar una lista ordenada en base a la votacion de ...
  #1 (permalink)  
Antiguo 06/07/2005, 07:33
 
Fecha de Ingreso: enero-2002
Ubicación: Mar del Plata
Mensajes: 243
Antigüedad: 22 años, 5 meses
Puntos: 0
como hacer lista topten ordenada en base a votos

Hola, quisiera saber si a alguien se le ocurre como podria hacer esto:

Tengo que armar una lista ordenada en base a la votacion de los usuarios, por ejemplo que sea el "top-ten de los artistas mas votados" y que el orden del 1 al 10 sea marcado por los mas votados por los usuarios...
No tengo idea de como puedo encarar eso, porque no me sirve que me salga un porcentaje de los mas votados (Fulano 50%, mengano 15%) ni tampoco las rayitas graficas como en una encuesta.
Lo que necesito es que en esa lista aparezcan y se ordenen de acuerdo al ranking que los propios usuarios votan obvio cargandose de una base de datos

Alguna idea que me oriente?
Please

GRACIAS
  #2 (permalink)  
Antiguo 06/07/2005, 07:42
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
has un select de los ultimo diez artistas en la BD (utilizando top) y ordenalos por el campo donde se suman los votos y le pones que se ordenen descendente.

eso es lo más basico...
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #3 (permalink)  
Antiguo 06/07/2005, 07:55
 
Fecha de Ingreso: enero-2002
Ubicación: Mar del Plata
Mensajes: 243
Antigüedad: 22 años, 5 meses
Puntos: 0
O sea, debo hacer basicamente una encuesta, pero que en vez de que me muestre porcentajes me ordene por la columna votos ? Seria asi ?

Si esto es asi, tenes algun ejemplo de encuesta simple que pueda aplicarse a este problema ?
MUCHAS GRACIAS
  #4 (permalink)  
Antiguo 06/07/2005, 08:33
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
bueno, ejemplo si lo tengo pero tendria que adaptarlo a lo que pides...
de salida tienes que tener dos tablas....

una donde estan las opciones a votar y la otra el historial de esas opciones...
en la primera tabla debe exisitir un campo donde vallas almacenando el total de votos de X opción y luego el select debe contemplar ese campo.. o sea, ordenarlo con respecto al total de votos...

pero eso ya te lo dejo a ti para que lo hagas... la cosa es que aprendas no que te de todo el código... está bien que ya la rueda se inventó pero pana, eso es facil de hacer

cualquier duda me avisas.... seguro que te voy a ayudar... pero trata primero

un salu2
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #5 (permalink)  
Antiguo 06/07/2005, 09:44
 
Fecha de Ingreso: enero-2002
Ubicación: Mar del Plata
Mensajes: 243
Antigüedad: 22 años, 5 meses
Puntos: 0
Gracias Saruman....
La verdad es que es algo avanzado para mi esto, logre adaptar una encuesta que arme desde un tutorial...Esta tengo alojada aqui a modo de ejemplo:
votar

Vota y mira como presenta los resultados...

Todo bien hasta ahi, el tema es que no me interesa mostrar los porcentajes sino el orden de mayor a menor, o sea un ranking....El mas votado arriba de todo, el 2do debajo, etc, etc...
Y pese a que entiendo tu razonamiento yo en esto de la programacion no soy bueno, quiero aprender pero no se resolver esto. Ni empezar
Te adjunto el codigo fuente que utilice en este ejemplo, en la pagina de resultados:

"<%
Dim rs_poll
Dim rs_poll_numRows

Set rs_poll = Server.CreateObject("ADODB.Recordset")
rs_poll.ActiveConnection = MM_mxpoll_STRING
rs_poll.Source = "SELECT * FROM mxpoll"
rs_poll.CursorType = 0
rs_poll.CursorLocation = 2
rs_poll.LockType = 1
rs_poll.Open()

rs_poll_numRows = 0
%>
<%
' *** Recordset Stats, Move To Record, and Go To Record: declare stats variables

Dim rs_poll_total
Dim rs_poll_first
Dim rs_poll_last

' set the record count
rs_poll_total = rs_poll.RecordCount

' set the number of rows displayed on this page
If (rs_poll_numRows < 0) Then
rs_poll_numRows = rs_poll_total
Elseif (rs_poll_numRows = 0) Then
rs_poll_numRows = 1
End If

' set the first and last displayed record
rs_poll_first = 1
rs_poll_last = rs_poll_first + rs_poll_numRows - 1

' if we have the correct record count, check the other stats
If (rs_poll_total <> -1) Then
If (rs_poll_first > rs_poll_total) Then
rs_poll_first = rs_poll_total
End If
If (rs_poll_last > rs_poll_total) Then
rs_poll_last = rs_poll_total
End If
If (rs_poll_numRows > rs_poll_total) Then
rs_poll_numRows = rs_poll_total
End If
End If
%>
<%
' *** Recordset Stats: if we don't know the record count, manually count them

If (rs_poll_total = -1) Then

' count the total records by iterating through the recordset
rs_poll_total=0
While (Not rs_poll.EOF)
rs_poll_total = rs_poll_total + 1
rs_poll.MoveNext
Wend

' reset the cursor to the beginning
If (rs_poll.CursorType > 0) Then
rs_poll.MoveFirst
Else
rs_poll.Requery
End If

' set the number of rows displayed on this page
If (rs_poll_numRows < 0 Or rs_poll_numRows > rs_poll_total) Then
rs_poll_numRows = rs_poll_total
End If

' set the first and last displayed record
rs_poll_first = 1
rs_poll_last = rs_poll_first + rs_poll_numRows - 1

If (rs_poll_first > rs_poll_total) Then
rs_poll_first = rs_poll_total
End If
If (rs_poll_last > rs_poll_total) Then
rs_poll_last = rs_poll_total
End If

End If
%>

<%
'Get Poll Results using Filter
Dim arrCount(1000)
For i = 1 to 4
FilterParam = i
rs_poll.Filter = "Choice = " & FilterParam
'Count results
While NOT rs_poll.EOF
arrCount(i) = arrCount(i) + 1
rs_poll.MoveNext()
Wend
Next
%>


<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#DBE8E8" text="#000066" link="#000099" vlink="#000099" alink="#000099">
<div align="center">
<p><strong><font size="4" face="Comic Sans MS">RESULTADOS</font></strong></p>
<table width="500" border="4" cellspacing="4" cellpadding="4">
<tr>
<td colspan="2"><div align="center"><strong></strong></div></td>
</tr>
<tr>
<td width="109"><strong><font size="2" face="Comic Sans MS">TEMA 1</font></strong></td>
<td width="351"><strong><font size="2" face="Comic Sans MS"><%=FormatNumber((arrCount(1)/rs_poll_total*100), 2, -2, -2, -2)%>%</font></strong></td>
</tr>
<tr>
<td><strong><font size="2" face="Comic Sans MS">TEMA 2</font></strong></td>
<td><strong><font size="2" face="Comic Sans MS"><%=FormatNumber((arrCount(2)/rs_poll_total*100), 2, -2, -2, -2)%>%</font></strong></td>
</tr>
<tr>
<td><strong><font size="2" face="Comic Sans MS">TEMA 3</font></strong></td>
<td><strong><font size="2" face="Comic Sans MS"><%=FormatNumber((arrCount(3)/rs_poll_total*100), 2, -2, -2, -2)%>%</font></strong></td>
</tr>
<tr>
<td><strong><font size="2" face="Comic Sans MS">TEMA 4</font></strong></td>
<td><strong><font size="2" face="Comic Sans MS"><%=FormatNumber((arrCount(4)/rs_poll_total*100), 2, -2, -2, -2)%>%</font></strong></td>
</tr>
<tr>
<td colspan="2"><div align="center"><font size="2" face="Comic Sans MS"><strong>UN
TOTAL DE <%=(rs_poll_total)%>VOTARON</strong></font></div></td>
</tr>
</table>
<p><strong><font size="2" face="Comic Sans MS"><a href="vote.asp">VOLVER</a></font></strong></p>
<p>&nbsp;</p>
</div>
</body>
</html>
<%
rs_poll.Close()
Set rs_poll = Nothing
%>"

Espero puedas ayudarme
Gracias
  #6 (permalink)  
Antiguo 06/07/2005, 09:47
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
no esta ordenando por la cantidad de votos (%)... deberias ponerlo así, asi se entiende mejor... otra cosa, puedo votar las veces que quiero.. valida eso para que la votación se exacta o mas creíble....

saludos

pd. mira la encuesta de este sitio,la hice yo...

http://www.estascontratado.com/ec3/portada.asp
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #7 (permalink)  
Antiguo 06/07/2005, 09:49
 
Fecha de Ingreso: enero-2002
Ubicación: Mar del Plata
Mensajes: 243
Antigüedad: 22 años, 5 meses
Puntos: 0
Yo, para un trabajo de una pagina que hace reviews de discos, tengo que mostrar los discos mas votados por sus usuarios, es decir, un ranking de los mas votados.
Lo mas cercano que se me ocurre es hacer una encuesta, pero no se como lograr modificarla para que me ordene los resultados en relacion a la cantidad de votos...Ese es mi problema

Perdon, si soy reiterativo, Gracias
  #8 (permalink)  
Antiguo 06/07/2005, 09:59
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
te mandé un mensaje privado
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #9 (permalink)  
Antiguo 06/07/2005, 10:03
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 21 años, 7 meses
Puntos: 16
en las faqs puse un link a un script de valoracion de productos ese yo creo que es lo que andas buscando.... http://www.forosdelweb.com/showthrea...a%20valoracion hechale un vistazo...

y lo de mostrar los top 10 seria algo asi:
sql = "Select Top 10 * From tabla Order By campo Desc"
saludos y suerte
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!

Última edición por El_Metallick; 06/07/2005 a las 10:22
  #10 (permalink)  
Antiguo 06/07/2005, 10:40
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
algun colaborador o administrador de este foro que pueda adjuntar archivos?
es para no tener que postear todo el script y además tiene una BD.
Al Zagua... puedes hacer esto? te lo tengo que mandar??

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #11 (permalink)  
Antiguo 06/07/2005, 10:51
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
saruman, mejor colgalo en algún espacio que tengas y enlazalo desde ahí
__________________
...___...
  #12 (permalink)  
Antiguo 06/07/2005, 10:55
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
DESCARGAR_AQUI



LISTO
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:39.