Pagina 1 van 1

SQL query moeilijkheden

Geplaatst: 11 jan 2008, 18:37
door scffie

Code: Selecteer alles

//
// last 5 buddys in profile
//

$last_5_buddys = $lang['Newest_buddys];

$sql = "SELECT user_id, contact_id, user_ignore, disallow
	FROM " . CONTACT_TABLE . "
	WHERE user_id='{$profiledata['user_id']}'
AND contact_id = [geen idee hoe dit te doen]
	ORDER BY contact_id DESC LIMIT 5";

if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

while( $row = $db->sql_fetchrow($result) )
{
		if ( $last_5_buddys == $lang['Newest_buddys'] )
		{
		$last_5_buddys .= '<a href="' . append_sid("profiel.$phpEx?mode=bekijkprofiel&" . POST_USERS_URL . "=" . $row['contact_id']) . '"' . $style_color .'>' . $row['contact_id'] . '</a><br>';
		}
		else
		{
		$last_5_buddys .= '<a href="' . append_sid("profiel.$phpEx?mode=bekijkprofiel&" . POST_USERS_URL . "=" . $row['contact_id']) . '"' . $style_color .'>' . $row['contact_id'] . '</a><br>';
		}
}
//
// last 5 buddys in profile
//
Ik was bezig met de bovenstaande code om zodoende de 5 laatste buddy's toe te voegen aan mijn profielpagina en de code opzich werkt ook goed genoeg aangezien ik netjes alle cijfertjes terug krijg die ik heb ingevoerd in de database bij de buddytabel.
Enkel zou ik graag willen dat de gebruikersnamen van die contact_id's worden weergegeven.

Het probleem: de username van de contact_id staat logischerwijs enkel in de USERS tabel en valt gelijk met de user_id, user_id is dus gelijk aan contact_id.
Maar ik heb geen flauw idee hoe ik in dezelfde query de usernames van de contact_id's oproep, zover rijkt mijn SQL kennis helaas nog niet en met de voorbeelden op internet kom ik helaas ook niet ver genoeg.

Iemand die me hiermee op weg kan helpen?

Re: SQL query moeilijkheden

Geplaatst: 11 jan 2008, 21:25
door scffie
Excuus voor het omhoog bumpen, maar het is inmiddels gelukt.
Zal de code delen voor het geval iemand er iets aan heeft.

Code: Selecteer alles

//
// last 5 buddys
//

$last_5_buddys = $lang['Newest_buddys'];


$sql = "SELECT u.username, u.user_id,    c.user_id, c.contact_id, c.user_ignore, c.disallow
         FROM ".USERS_TABLE." u, ".CONTACT_TABLE." c
         WHERE c.contact_id = u.user_id
	AND c.user_id='{$profiledata['user_id']}'
AND 

	ORDER BY c.contact_id DESC LIMIT 5";

if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

while( $row = $db->sql_fetchrow($result) )
{
		if ( $last_5_buddys == $lang['Newest_buddys'] )
		{
		$last_5_buddys .= '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['contact_id']) . '"' . $style_color .'>' . $row['username'] . '</a><br>';
		}
		else
		{
		$last_5_buddys .= '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['contact_id']) . '"' . $style_color .'>' . $row['username'] . '</a><br>';
		}
}
//
// last 5 buddys
//