[Error]  Problema al activar plugins.
* URL del foro: http://www.soldiersatforum.com/foro/index.php * Versión del foro: 1.6 * Actualización: 1.6.2 Como puse en una anterior pregunta en...


Como puse en una anterior pregunta en otro post, cambié la versión de mi foro a la nueva 1.6.5 y al no solucionarse el problema volví a la 1.6.2 ya que no me funcionaban algunas cosas.

El problema que ahora, al instalar algunos plugins me da este error:

He vuelto a poner la versión que tenía ya que muchos plugins no me funcionaban y al activarlos me sale este error:

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
2013 - Lost connection to MySQL server during query
Query:
SELECT sid FROM mybb_templatesets WHERE sid NOT IN (-2,-1,2,3,4,5,6,7,8,9,10,1,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43


¿Qué puede pasar? He mirado la base de datos y está todo correcto, esta tabla que pide lo mismo y el foro ba vien, lo único los plugins.....


En 2 plugins me da este error, los demás se han activado bien...



Creo que el problema es de la consulta, puesto que hago la consulta a mano en modo comando y tampoco me la hace, le quito a la consulta los número negativos y me la hace, le quito los numeros positivos y le la hace, pero cuando dejo numeros positivos y negativos no me la hace.
Última modificación: 30 Dec, 2011, 7:54 pm por gcam.
Como hiciste el proceso que mencionas ??

Ya que deben funcionar si no has tocado nada, es una instalación y/o actualización completa o parcial, que cosa tocaste, porque algo seguramente afecto al funcionamiento de tu foro.

En lo particular es una consulta que hace a la base de datos, tomando como referencia algo del plugin y esta mandando a traer valores que deben estar dentro de tu base de datos, es cosa de mirar la base de datos, y la consulta en que parte la hace, para ver bien el porque te manda numeros negativos, ya que esta tomando la id de alguna cosa, y estas jamás deben ir en negativos, ya que son consecutivos mayores a 0.

La manera de corregir este fallo es editanto esa consulta. Pero no es la correcta, ya que por algo la esta mandando y debes depurar tu base de datos antes de otra cosa. Ya que ahi es donde toma esos datos.

Pero puedes hacer lo siguiente en el plugin...

Entra en la linea que manda a traer los datos y aclarale con un WHERE que el sid sea mayor a 0. Si ya tienen un WHERE pues utiliza la condicional AND, para que tome lo que ya tiene y que sea mayor a 0. Asi debe hacer bien la consulta y no marcar error. Ya que te esta trayendo información que no debiera existir o que esta mal acomodada.

O que tambien tengas la cache de tus plugins funcionando, intenta limpiar la cache de los mismos, luego intenta hacer la consulta y si has echo todo esto platicanos que asunto tienes, ya que es poco común que pasen estas cosas.

Si tienes tu base de datos original del respaldo, de ahi puedes partir, a menos que tenga datos corruptos todo funcionara y debe funcionar bien.

Si es una base de datos nueva, la instalación es limpia, menos debe darte error.

Si quieres te puedo apoyar en este proceso, pero solo te pido paciencia y que no me presiones con el tiempo, ya que yo puedo terminarla, pero siempre para que todo salga bien se requiere tiempo.

Saludos...
Lo primero darte las gracias por ayudarme.

Lo segundo es que he reinstalado TODO completamente, y cuando digo TODO es TODO, tenía copia de cada uno de los archivos de mi foro, así como de la base de datos ( copia que hice antes de empezar a actualizar por si las moscas) Decirte que todo sigue igual.....el foro y todo funciona perfecto, incluso me instala los plugins que me fallan, el problema es al ACTIVAR el plugins es cuando me sale ese error en los dos que me faltan por activar.

He vuelto a meter el plugin de nuevo pero nada, sigue saltando ese error.....he mirado el plugin pero esque por ningún sitio encuentro esa consulta.....pienso que esa consulta la hace mybb a la base de datos para activarlo y no el plugin en sí...

Mirando por internet el tipo de error he configurado el Mysql en el fichero de configuración que está en /etc/mysql poner el valor de max_allowed_packet = 16M a max_allowed_packet = 64M y a 128MB ya que decían que era porque la consulta era demasiado grande y no la podía sacar (cosa que no entiendo porque la tabla que pide tiene 30 filas insertadas nada más) pero por probar....y nada todo sigue igual.

Por cierto para más información es un VPS ( Virtual server con ubuntu instalado)


EDITO:

La consulta no se puede tocar ya que no es del plugin si no de Mybb en el fichero Adminfunctions_templates.php (/inc)

La funcion que usa al activar es esta:

find_replace_templatesets

La consulta creo que es esta:

$query = $db->simple_select("templatesets", "sid", "sid NOT IN (".implode(',', $template_sets).")");

Y la variable es esta:

$template_sets = array(-2, -1);

y más abajo asigna:

$template_sets[] = $template['sid'];

No se si estoy en lo cierto.....


EDITO2:

He probado a modificar esta variable $template_sets = array(-2, -1); con 0 0, 1 1, () y me lo activa con todas las que le he puesto pero me sale el plugin repetido varias veces.

Por ejemplo uno de ellos es el que salen los post más recientes en el foro, pues al modificar esa variable se repite la caja de los post más recientes 4-5 veces lo mismo y el otro plugins es el de visitas al perfil y lo mismo, me lo activa pero la caja sale repetida muchas veces.

Es decir sale así:

Visitas a tu perfil: pepito, manolito, juanito

Visitas a tu perfil: pepito, manolito, juanito

Visitas a tu perfil: pepito, manolito, juanito

Visitas a tu perfil: pepito, manolito, juanito
Última modificación: 30 Dec, 2011, 9:57 pm por gcam.
Claro, debe ser por la siguiente causa.

ya esta bien entonces la cosa, pero al parecer cuando instalas y desinstalas el plugin no hace su funcion correctamente, entonces duplica los datos.

En el plugin vienen las platillas afectadas y que variables se agregan, solo mira las variables y en que plantilas se encuentran.

veras que estan repetidas x veces que has puesto por el activar y desactivar, en fin, solo elimina las variables sobrantes y tu problema se habra solucionado.

Saludos...
Bueno ya están activas.....lo he hecho de forma "chapucera" pero ha funcionado....

Por si alguien lo necesita:

-He modificado en Adminfunctions_templates.php (/inc) la linea $template_sets = array(-2, -1) por $template_sets = array(); ya que así me dejaba hacer la consulta que activaba el plugins.

-Una vez activado, saldrá doble porque ha añadido a las plantillas duplicado (El anterior y el nuevo)

-Me he ido a la edición de plantillas (La que uses), en mi caso Member-Plantillas --> member profile y he borrao el duplicado en el código, guardamos y en índice-Plantillas --> index y he borrado el duplicado en el código y guardamos.


-Compruebas que ahora todo está correcto y una vez terminado modificamos de nuevo en Adminfunctions_templates.php (/inc) la linea $template_sets = array(-2, -1), es decir la dejamos como estaba.


Con esto modificas la vista de tu foro, pero no se si realmente en la base de datos está duplicado.....no he mirado ni pienso mirar, prefiero tener 2 lineas duplicadas pero que funcione bien a cargarmelo todo.....

Saludos y espero que sirva de ayuda


Como este de los plugins ya está resuelto, os pido que me ayudéis en el anterior del tema del número de páginas que sigue sin resolverse....

AQUÍ
Última modificación: 31 Dec, 2011, 6:12 am por gcam.
Venga ha sido un placer apoyarte y gracias por exponer la solucion final, seguro a mas de uno sirve, tema cerrado y vamos a por el otro xD.