Página 1 de 2
¿Error en un solo tema? AOS Tag User BBCode
Publicado: 18 Dic 2011, 09:32
por uruguayito
Esto nunca me había pasado.
Al querer ingresar a un tema, en el que hasta ayer se podía ingresar sin problemas, ahora me aparece un "error general"
al parecer el error es con 1 usuario o su forma de escribir.
aparece esto:
Error General
SQL ERROR [ mysql4 ]
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '{smilies_path}/hihi.gif" alt="hihi" title="hihi" /><ǃ-- shihi -->")' at line 3 [1064]
SQL
SELECT user_id, username, user_colour FROM phpbb3_users WHERE username_clean IN ("anykryzʔ <ǃ-- shihi --><img src="{smilies_path}/hihi.gif" alt="hihi" title="hihi" /><ǃ-- shihi -->")
BACKTRACE
FILE: includes/db/mysql.php
LINE: 175
CALL: dbal->sql_error()
FILE: includes/functions_tag_user.php
LINE: 113
CALL: dbal_mysql->sql_query()
FILE: includes/functions_tag_user.php
LINE: 138
CALL: atub_obtain_users()
FILE: viewtopic.php
LINE: 1563
CALL: atub_use_tag_user()
¿qué puede ser?
Re: ¿Error en un solo tema?
Publicado: 18 Dic 2011, 12:06
por angelismo
¿tienes instalado este mod
http://www.phpbb-es.com/foro/mods-desar ... 33194.html ? Lo digo ,porque el error parece que lo provoca dicho mod.
Re: ¿Error en un solo tema?
Publicado: 18 Dic 2011, 18:17
por Alorse
Si, el problema es a causa del MOD, sucede cuando se usan emoticonos dentro de la etiqueta, una solución temporal mientras encuentro una más acorde seria.
Abrir el archivo
includes/functions_tag_user.php y buscar:
Código: Seleccionar todo
$sql = 'SELECT user_id, username, username_clean, user_colour
FROM ' . USERS_TABLE . '
WHERE username_clean IN ("' . $list_a . '")';
$result = $db->sql_query($sql);
$i = 0; //Counter position of while()
$tum = array();
while ($row = $db->sql_fetchrow($result)) {
$tum['username'][] = '#(\[tag:' . $list[1][$i] . '\]' . str_replace('\*', '\w*?', preg_quote($row['username'], '#')) . '\[\/tag:' . $list[1][$i] . '\])#i';
$tum['profile'][] = '@' . $aos_tub -> atub_get_username_string($row['user_id'], $row['username'], $row['user_colour'], $config['atub_viewprofile']);
$i++;
}
$db->sql_freeresult($result);
return $tum;
Reemplazar por:
Código: Seleccionar todo
if (!empty($list_a) && !strpos($list_a, "<ǃ--"))
{
$sql = 'SELECT user_id, username, username_clean, user_colour
FROM ' . USERS_TABLE . '
WHERE username_clean IN ("' . $list_a . '")';
$result = $db->sql_query($sql);
$i = 0; //Counter position of while()
$tum = array();
while ($row = $db->sql_fetchrow($result))
{
$tum['username'][] = '#(\[tag:' . $list[1][$i] . '\]' . str_replace('\*', '\w*?', preg_quote($row['username'], '#')) . '\[\/tag:' . $list[1][$i] . '\])#i';
$tum['profile'][] = '@' . $aos_tub -> atub_get_username_string($row['user_id'], $row['username'], $row['user_colour'], $config['atub_viewprofile']);
$i++;
}
$db->sql_freeresult($result);
return $tum;
}
Con eso ya no te dará el error que se da por un mal uso del del MOD, pero que de igual manera no debería suceder.
Re: ¿Error en un solo tema?
Publicado: 19 Dic 2011, 00:45
por uruguayito
sí lo uso
hice el cambio que sugeriste Alorse....
Ahora me salta este error:
Fatal error: Using $this when not in object context in /home/fliatjc/public_html/tjc/includes/functions_tag_user.php on line 123
en esa línea está esto:
$tum['profile'][] = '@' . $this->atub_get_username_string($row['user_id'], $row['username'], $row['user_colour'], $config['atub_viewprofile']);
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 19 Dic 2011, 02:51
por Alorse

se me fue un pedazo de código de la nueva versión

En esa linea que mencionas debes cambiar
$this->
por
$aos_tub->
, con eso ya se te soluciona el problema.
PD: lo edito en el mensaje que deje la solución para que luego alguien no comenta el mismo error, también edito el titulo del tema.
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 19 Dic 2011, 10:15
por uruguayito
hice el cambio sugerido...
pero ahora me sale este error :s
Fatal error: Call to a member function atub_get_username_string() on a non-object in /home/fliatjc/public_html/tjc/includes/functions_tag_user.php on line 123
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 19 Dic 2011, 14:41
por Alorse
mmm no debería, fíjate que la función
atub_obtain_users
que tienes sea igual a esta:
Código: Seleccionar todo
/**
* Obtain a list of users
*
* @param (String) $message
*
* @return array
*
* @version: 0.1.1
*/
function atub_obtain_users($message)
{
global $db, $config;
$aos_tub = new aos_tag_user();
$var = preg_match_all('/\[tag:(.*?)\](.*?)\[\/tag:(.*?)\]/', $message, $list);
$list_a = str_replace('ʹʹ', '"', utf8_clean_string(implode('", "', $list[2])));
if (!empty($list_a) && !strpos($list_a, "<ǃ--"))
{
$sql = 'SELECT user_id, username, username_clean, user_colour
FROM ' . USERS_TABLE . '
WHERE username_clean IN ("' . $list_a . '")';
$result = $db->sql_query($sql);
$i = 0; //Counter position of while()
$tum = array();
while ($row = $db->sql_fetchrow($result)) {
$tum['username'][] = '#(\[tag:' . $list[1][$i] . '\]' . str_replace('\*', '\w*?', preg_quote($row['username'], '#')) . '\[\/tag:' . $list[1][$i] . '\])#i';
$tum['profile'][] = '@' . $aos_tub -> atub_get_username_string($row['user_id'], $row['username'], $row['user_colour'], $config['atub_viewprofile']);
$i++;
}
$db->sql_freeresult($result);
return $tum;
}
}
Si no es así, entonces reemplazala por esa y ya te debería dejar de dar errores ya que la linea que mencionas que te da error no tiene ningún cambio, es la mima del archivo original de descarga del MOD.
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 19 Dic 2011, 15:24
por uruguayito
ahora me arroja este error:
Fatal error: Call to a member function atub_get_username_string() on a non-object in /home/fliatjc/public_html/tjc/includes/functions_tag_user.php on line 126
esa línea 126 tiene esto:
Código: Seleccionar todo
$tum['profile'][] = '@' . $aos_tub -> atub_get_username_string($row['user_id'], $row['username'], $row['user_colour'], $config['atub_viewprofile']);
Re: ¿Error en un solo tema? AOS Tag User BBCode Tema Solucionado
Publicado: 19 Dic 2011, 16:15
por Alorse
uruguayito escribió:ahora me arroja este error:
Es el mismo que te salia antes
Al parecer has editado mal el archivo, porque debería funcionar, mira lo que debes hacer, solamente reemplaza ese archivo por el original del MOD, con eso ya solo debes quedar con el primer error que tenias, luego de verificar que solo tienes ese primer error en ese mensaje y el resto funcionan bien, las lo siguiente:
Busca:
Código: Seleccionar todo
$sql = 'SELECT user_id, username, username_clean, user_colour
Y
antes agrega:
Busca:
y después agrega:
Si con eso no se soluciona es porque estas haciendo algo mal.
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 19 Dic 2011, 18:52
por uruguayito
Alorse: hice tal cual dijiste en tu último mensaje.
Pero ahora me sale este error:
Fatal error: Call to undefined function atub_use_tag_user() in /home/fliatjc/public_html/tjc/viewtopic.php on line 1561
la línea 1561 del viewtopic.php dice esto:
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 19 Dic 2011, 19:04
por Alorse
uruguayito escribió:Pero ahora me sale este error:
Cuando te salio ese error? al poner los archivos originales? al poner las lineas que te indico?
Por favor se más especifico, por no serlo no hemos podido llegar a la solución del problema.
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 20 Dic 2011, 02:42
por uruguayito
uruguayito escribió:Alorse: hice tal cual dijiste en tu último mensaje.
creo haber sido bien especifico...
al archivo original que me dijiste que volviera a subir, le hice las modificaciones que indicaste en el último mensaje

Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 20 Dic 2011, 02:56
por Alorse
uruguayito escribió:creo haber sido bien especifico...
No lo creo.
Alorse escribió:Cuando te salio ese error? al poner los archivos originales? al poner las lineas que te indico?
Alorse escribió:luego de verificar que solo tienes ese primer error en ese mensaje y el resto funcionan bien
Lo verificaste?
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 20 Dic 2011, 02:58
por leviatan21
uruguayito escribió:la línea 1561 del
viewtopic.php dice esto:
Alorse el error no está en el archivo que tu indicas editar...
Re: ¿Error en un solo tema? AOS Tag User BBCode
Publicado: 20 Dic 2011, 03:01
por Alorse
leviatan21 escribió:Alorse el error no está en el archivo que tu indicas editar...
Pero si el archivo que indico existe y esta bien editado, además de estar bien todos los pasos de la instalación, el error debería estar solucionado.
Ya que lo he probado.