Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - César Krall

Páginas: 1 ... 53 54 55 56 57 [58] 59 60 61 62 63 ... 68
1141
Prueba con esta sintaxis a ver si hay suerte:

SELECT tab1.name AS titulo, AVG(tab2.value) AS rating

FROM AC_zoo_item AS tab1 LEFT JOIN AC_zoo_rating as tab2 ON tab1.id = tab2.item_id

GROUP BY item_id

ORDER BY rating DESC

LIMIT 0, 20




1142
Comunidad / Re:la hojarasca de Ignacio Camacho
« en: 22 de Abril 2013, 09:40 »
En cuanto tenga un hueco le echo un vistazo

1143
Yo creo que ya prácticamente lo tienes, si haces la consulta que te pongo más abajo deberían aparecerte todos los titles junto a su rating, que es lo que creo te interesa para que se te muestre dentro del módulo.

La consulta sería algo así (hay que probar por si hubiera algún problema, cuando la hayas hecho dime si crees que ha salido bien y ponme la imagen para verla):

SELECT tab1.name AS titulo, tab2.AVG(value) AS rating

FROM AC_zoo_item AS tab1 LEFT JOIN AC_zoo_rating as tab2 ON tab1.id = tab2.item_id

GROUP BY item_id

ORDER BY rating DESC

LIMIT 0, 20


La cláusula LIMIT sería para que solo te muestre cierto número de resultados, en este caso los 20 primeros títulos con mayor rating, pero en vez de 20 podría ponerse que fueran más o menos según prefirieras.


1144
Prueba también a ejecutar esto a ver qué te sale:

SELECT AVG(value) AS rating, COUNT(id) AS votos
FROM AC_zoo_rating
WHERE item_id = 980
GROUP BY item_id



¿Hay una tabla que se llama AC_zoo_element? ¿Qué contiene esa tabla?


1145
Haz esta consulta en phpMyAdmin para ver qué es lo que te sale y ponme la imagen para verlo:

SELECT tab1.name AS title, tab2.value AS puntuacion

FROM AC_zoo_item AS tab1 LEFT JOIN AC_zoo_rating as tab2 ON tab1.id = tab2.item_id

WHERE tab2.item_id = 980

ORDER BY tab2.value DESC


En este caso es solo para el item 980 para comprobar cuántas líneas te aparecen


1146
¿Dónde ves el número de votos? ¿Lo tienes en un campo específico o simplemente sabes que hay varios votos porque hay varias líneas en la tabla AC_zoo_rating donde el item_id es el mismo, lo que significaría varios votos para un item? ¿Puedes ponerme una imagen para verlo?


1147
Suponiendo que queremos rescatar el campo "name" de la tabla AC_zoo_item en base al campo "value" de la tabla AC_zoo_rating lo primero sería probar a hacer la consulta en phpMyAdmin para comprobar que funcione. La consulta sería algo así (habría que probar):

SELECT tab1.name AS title, tab2.value AS puntuacion

FROM AC_zoo_item AS tab1 LEFT JOIN AC_zoo_rating as tab2 ON tab1.id = tab2.item_id

ORDER BY tab2.value DESC



Lo que estaríamos intentando es: obtener la lista de name desde la tabla AC_zoo_item en base al valor value que tengan esos items en la tabla AC_zoo_rating y ordenarlos por orden descendente (es decir, de mayor a menor puntuación).

Lo primero es probar que haciendo la consulta en phpMyAdmin te devuelva la lista de nombres ordenados por puntuación y que te salga ordenado correctamente. Si sale bien en phpMyAdmin ya se podría pasar a ver cómo habría que hacerlo en código, si no sale bien hay que corregir la consulta hasta que salga bien.


1148
He intentado instalar la extensión zoo para mirarlo pero me salta un error. Yo creo que no sea en la tabla zoo_item sino en la tabla zoo_rating donde debas mirar. Puedes hacer una prueba:

Identifica cuál es el item de zoo nº980 (el que me pusiste en la imagen en post anterior). Haz una consulta en mysql para ver cuántas líneas aparecen en la tabla zoo_rating con ese item_id. Imagínate que te aparecen 3 líneas. A continuación, haz un voto por ese item en el frontEnd y dale por ejemplo valor 4. Luego repite la consulta en la tabla: si te aparece una nueva línea con item_id 980 y value 4 eso significa que es en esa tabla donde de forma principal se está almacenando la información de los votos.


1149
Tabla prefijo_conteng_rating: contiene 4 campos que son content_id (tipo entero), rating_sum (tipo entero), rating_count (tipo entero) y lastip (tipo varchar de 50 caracteres).

Tabla prefijo_content: contiene numerosos campos como id, introtext, fulltext, etc.

El campo content_id en principio relaciona con el campo id de la tabla content

En zoo en la tabla zoo_rating parece estar almacenado cada voto con su valor en el campo value y relacionado con el item de zoo para el que va el voto que es el item_id. Habría que contar el número de votos que tiene cada item_id y sumar las puntuaciones que tiene para obtener el acumulado, y luego dividir entre el número de votos que tiene para obtener la puntuación. Ahora bien, esa puntuación ya la está mostrando en el frontEnd, entonces supongo que estará almacenada en otra tabla de zoo que habría que buscar (no creo que esté realizando el cálculo a través de código cada vez que se visualiza un item de zoo en el frontEnd).

El campo item_id en principio relaciona con el campo id de la tabla AC_zoo_item

Si quieres realizar ordenaciones eligiendo categoría faltaría por ver en qué tabla de zoo relaciona cada item_id con su categoría. Si no quieres realizar ordenaciones eligiendo categoría no haría falta ver esa relación.

En el código del módulo efectivamente tienes la consulta donde extrae los datos y realiza el cálculo:

$query = "SELECT cc.title AS category, a.id, a.title, DATE_FORMAT(a.created,'%d.%m.%Y') as created,
       u.username, a.hits, cc.id as catid, format((r.rating_sum / r.rating_count), 2) as averagerating

...

ORDER BY (r.rating_sum / r.rating_count) desc, rating_count desc";


si te fijas lo que hace es dividir la puntuación acumulada entre el número de votos, por ejemplo si tiene puntuación acumulada 20 y el número de votos es 5 resulta 20/5 = 4 sería su rating y muestra los resultados ordenados en base a la puntuación.

Yo lo primero que miraría sería a ver de dónde extrae la información del rating de zoo en el frontEnd, bien una tabla de la base de datos o bien código si realiza el cálculo (menos probable). Si lo tienes en una tabla, es a partir de ahí de donde puedes extraer la información.

1150
Hola Camilo, para hablar de un nuevo tema abre otro hilo por favor, más que nada para tratar de mantener algo de orden, gracias.

1151
¿El código HTML con que se llena el JEditorPane desde donde sale? ¿Lo tomas de una base de datos, lo defines a mano, lo tienes en una variable ... ? ¿Puedes poner un ejemplo de cómo llenas el JEditorPane en código y dónde te interesaría que se mostrara la variable?

1152
Para modificar el código primero tendrías que acceder a la base de datos, buscar las tablas de zoo y ver dónde (en qué tabla y columna) se almacena la puntuación de votaciones (y cómo se relaciona con las categorías, segurament a través de un id).

Por otro lado, habría que mirar en qué tabla y columna se almacenan las puntuaciones de los artículos joomla.

Una vez visto esto, habría que cambiar la consulta para que en vez de mirar las puntuaciones de artículos joomla mire las puntuaciones de los items de zoo.

1153
Se me ocurren dos cosas:

lo que no se muy bien es si en los left join deben estar #__ o debería de quitarselo... he pobrado a quitarlo y sigue sin funcionar...


a) Pueda haberse dañado el código si has manipulado. Descomprime los archivos del módulo en local y vuelve a subirlos por ftp (o desinstala y vuelve a instalar) para ver si se dañó algo.

b) ¿Con qué estás gestionando las votaciones? ¿Son artículos joomla o estás usando alguna extensión como sobi pro o alguna otra extensión? Lo digo porque viendo cómo se muestra en pantalla y viendo la url http:// bruno.mesonelcoto.com/index.php?option=com_zoo &task=item&item_id=1274&Itemid=114

esto no parece que sean artículos joomla, ¿las votaciones están dentro de una extensión? (por la url parece que fuera la extensión zoo) Si es así sería normal que el módulo no te funcione, el módulo no conoce la extensión que tú estás usando, sino el core joomla y las votaciones son las de artículos joomla. Para que te capturara votaciones de una extensión habría que modificar código.


1154
¿Dices que no te muestra los artículos? A mí sí me los muestra

¿Te sale el título del módulo pero está vacío? ¿Tienes la url para verlo?

1155
Para que te aparezcan artículos debes tener activadas las votaciones en los artículos y haber realizado distintas votaciones (para que se puedan ordenar los artículos por votaciones) ¿Tienes activadas las votaciones y has realizado votos?

1156
He probado a instalarlo y me ocurría lo mismo, no mostraba nada... Pero revisando me di cuenta de que cuando se crea el módulo aparece con "asignación de módulo ninguna página", al cambiarlo a "en todas las páginas" ya empezó a mostrarse (también hay que comprobar que tenga una posición de plantilla válida y que esté publicado)
¿Qué versión de joomla estás usando?


1157
El módulo no creo que esté mal, simplemente es que hay módulos o componentes que permiten muchas posibilidades y traen muchas opciones de configuración y otros no.

Ahora mismo está haciendo un select en sql seleccionando por votos de todos los artículos. El cambio que habría que hacer es que haga un select seleccionando por votos y categoría (la que tú elijas). Lo primero que habría es que añadir el que te muestre y permita seleccionar la categoría, y luego modificar el código de la consulta.

Quizás con k2 se pueda, pero te obliga a usar k2 y tampoco estoy 100% seguro.

1158
Por la imagen que has puesto parece que el módulo no deja elegir la categoría, sino que te muestra los artículos más votados de entre todos los artículos, no por categorías completas. Si tienes conocimientos de programación puedes modificar el módulo, no creo que te lleve más de una hora, para que te permita elegir categoría.

La otra alternativa que se me ocurre es usar la extensión k2, http://extensions.joomla.org/extensions/authoring-a-content/content-construction/8061?qh=YTozOntpOjA7czoyOiJrMiI7aToxO3M6MzoiJ2syIjtpOjI7czo0OiJrMidzIjt9

Esta extensión sirve para tener un sistema de artículos distinto al propio de joomla y trae módulos que permiten visualizar listas de artículos, creo que dentro de los módulos hay opciones para configurar en base a qué criterio se quieren mostrar los artículos y habría que ver si se puede elegir por el más votado y por categoría (en este caso serían categorías de k2, como te digo k2 es un sistema distinto al propio de artículos joomla). k2 te permite mostrar videos y otras funcionalidades, mucha gente lo usa aunque yo le veo el inconveniente de que es una extensión relativamente pesada y que requiere tiempo aprender a usarla.


1159
Para instalar una extensión hay que hacerlo a través del backEnd de Joomla.

Mírate aquí el apartado "Instalar o desinstalar una extensión en Joomla": https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=151:configuracion-del-sitio-joomla-instalar-o-desinstalar-extensiones-zona-horaria-cu00407a&catid=38:curso-qcreacion-web-con-joomla-nivel-iq&Itemid=152

En tu caso en vez del archivo es-ES_joomla_lang_full_179v1.zip tendrás otro archivo .zip que es el archivo comprimido para la instalación.

Una vez tengas hecha la instalación cuando pulses para crear un nuevo módulo, ya te aparecerá el nuevo tipo de módulo.


1160
Hola, joomla no incorpora en la instalación un módulo de los más votados, pero sí un módulo de "los más populares". Si tienes conocimientos de programación medios-avanzados puedes crear un módulo a partir de este para que en vez de los más populares muestre los más votados.

Si no, tienes como alternativa usar alguna extensión existente: yo no la he probado pero parece que esta extensión serviría para hacer lo que pretendes:

http://extensions.joomla.org/extensions/news-display/popular-content/22071

Saludos!

Páginas: 1 ... 53 54 55 56 57 [58] 59 60 61 62 63 ... 68

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".