Ich hätte es so gemacht:
Das
Code: Alles auswählen
//
// Getting the buddy images to appear
// This will create image and text links, and will choose add/remove appropriately
//
function get_buddy_img(&$user_id, &$buddy_id)
{
global $db, $lang, $template, $theme, $images, $phpEx;
global $HTTP_SERVER_VARS;
$action = preg_replace("#(\&buddy=remove)+?#si", '', $HTTP_SERVER_VARS['REQUEST_URI']);
$action = preg_replace("#(\&b=$buddy_id)+?#si", '', $action);
$action = preg_replace('#.*?([a-z]+?\.' . $phpEx . '.*?)$#i', '\1', htmlspecialchars($action));
$buddy = '';
$buddy_img = '';
if( $buddy_id != $user_id && $user_id != ANONYMOUS && $buddy_id != ANONYMOUS )
{
$sql = "SELECT buddy_id FROM " . BUDDIES_TABLE . " WHERE user_id = $user_id AND buddy_id = $buddy_id";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not retrieve buddy information', '', __LINE__, __FILE__, $sql);
}
if( $row = $db->sql_fetchrow($result) )
{
$temp_url = $action . ( ( preg_match('#\?#', $action) ) ? '&' : '?' ) . "buddy=remove&b=$buddy_id";
$buddy_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_buddy_remove'] . '" alt="' . $lang['Remove_buddy'] . '" title="' . $lang['Remove_buddy'] . '" border="0" /></a>';
$buddy = '<a href="' . $temp_url . '">' . $lang['Remove_buddy'] . '</a>';
}
else
{
$temp_url = $action . ( ( preg_match('#\?#', $action) ) ? '&' : '?' ) . "buddy=add&b=$buddy_id";
$buddy_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_buddy'] . '" alt="' . $lang['Add_buddy'] . '" title="' . $lang['Add_buddy'] . '" border="0" /></a>';
$buddy = '<a href="' . $temp_url . '">' . $lang['Add_buddy'] . '</a>';
}
$db->sql_freeresult($result);
}
return array($buddy_img, $buddy);
}
Code: Alles auswählen
//
// Getting the buddy images to appear
// This will create image and text links, and will choose add/remove appropriately
//
function get_buddy_img(&$user_id, &$buddy_id)
{
global $db, $lang, $template, $theme, $images, $phpEx;
global $HTTP_SERVER_VARS;
$action = preg_replace("#(\&buddy=remove)+?#si", '', $HTTP_SERVER_VARS['REQUEST_URI']);
$action = preg_replace("#(\&b=$buddy_id)+?#si", '', $action);
$action = preg_replace('#.*?([a-z]+?\.' . $phpEx . '.*?)$#i', '\1', htmlspecialchars($action));
$buddy = '';
$buddy_img = '';
if( $buddy_id != $user_id && $user_id != ANONYMOUS && $buddy_id != ANONYMOUS )
{
$sql = "SELECT b.buddy_id, u.username AS buddy_name FROM " . BUDDIES_TABLE . " b, " . USERS_TABLE . " u WHERE user_id = $user_id AND buddy_id = $buddy_id";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not retrieve buddy information', '', __LINE__, __FILE__, $sql);
}
if( $row = $db->sql_fetchrow($result) )
{
$temp_url = $action . ( ( preg_match('#\?#', $action) ) ? '&' : '?' ) . "buddy=remove&b=$buddy_id";
$buddy_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_buddy_remove'] . '" alt="' . $lang['Remove_buddy'] . '" title="' . $lang['Remove_buddy'] . '" border="0" /></a>';
$buddy = '<a href="' . $temp_url . '">' . $buddy_name . ' ' . $lang['Remove_buddy'] . '</a>';
}
else
{
$temp_url = $action . ( ( preg_match('#\?#', $action) ) ? '&' : '?' ) . "buddy=add&b=$buddy_id";
$buddy_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_buddy'] . '" alt="' . $lang['Add_buddy'] . '" title="' . $lang['Add_buddy'] . '" border="0" /></a>';
$buddy = '<a href="' . $temp_url . '">' . $buddy_name . ' ' . $lang['Add_buddy'] . '</a>';
}
$db->sql_freeresult($result);
}
return array($buddy_img, $buddy);
}

