ich habe auf meiner Website (TechZone) zur Zeit Joomla und PHPBB laufen.
Nun habe ich beide Datenbanken mit JFusion verbunden, sodass man sich nur einmal anmelden muss und bei beiden System eingeloggt ist. Nun mein Problem:
Ich habe Community Builder installiert, mit welchem es Usern in Joomla ermöglicht wird eigene Profilseiten zu gestalten.
Das klappt so weit alles, nur möchte ich jetzt die Userdaten (wie ICQ-Nummer) auch in PHPBB anzeigen lassen.
Das funktioniert auch super, nur die Avatare wollen nicht so wirklich.
Wenn ein Thema mehrere Seiten hat, dann werden die Avatare nur auf den vorderen Seiten angezeigt, auf der jeweils letzten Seite kommt der Fehler:
Allgemeiner Fehler
SQL ERROR [ mysqli ]
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 'LIMIT 1' at line 2 [1064]
SQL
SELECT avatar FROM jos_comprofiler WHERE user_id= LIMIT 1
BACKTRACE
FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()
FILE: includes/db/mysqli.php
LINE: 205
CALL: dbal_mysqli->sql_query()
FILE: includes/db/dbal.php
LINE: 170
CALL: dbal_mysqli->_sql_query_limit()
FILE: includes/functions_display.php
LINE: 1363
CALL: dbal->sql_query_limit()
FILE: viewtopic.php
LINE: 1174
CALL: get_user_avatar()
Meine abgeänderte Funktion in includes/functions_display.php sieht so aus:
Code: Alles auswählen
function get_user_avatar($avatar, $avatar_type, $avatar_width, $avatar_height, $alt = 'USER_AVATAR', $uname='admin')
{
global $user, $config, $phpbb_root_path, $phpEx, $db;
// Hack by Andreas Reichel: Get avatar from CB - other part: viewtopic.php
$sql = "SELECT id FROM jos_users WHERE username='".$uname."'";
$result = $db->sql_query_limit($sql, 1);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$sql2 = "SELECT avatar FROM jos_comprofiler WHERE user_id=".$row['id'];
$result2 = $db->sql_query_limit($sql2, 1);
$row2 = $db->sql_fetchrow($result2);
$db->sql_freeresult($result2);
if ($row2['avatar'] == "" || empty($row2['avatar'])) return '';
return '<img src="http://www.mytechzone.de/images/comprofiler/'.$row2['avatar'].'" border="0" style="max-width:100px;max-height:100px">';
// End Hack
}
Code: Alles auswählen
// Hack by Andreas Reichel for avatar (Other part: functions_display.php!)
'avatar' => ($user->optionget('viewavatars')) ? get_user_avatar($row['user_avatar'], $row['user_avatar_type'], $row['user_avatar_width'], $row['user_avatar_height'], 'USER_AVATAR', $row['username']) : '',
// End Hack
Was habe ich falsch gemacht?
Um eine Antwort wäre ich sehr dankbar.
Mfg,
Battlestr1k3