SQL query moeilijkheden

Hulp nodig bij een modificaties of op zoek naar een MOD? Bekijk ons archief. Support wordt helaas niet meer verleend.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
scffie
Berichten: 56
Lid geworden op: 04 sep 2004, 12:33

SQL query moeilijkheden

Bericht door scffie » 11 jan 2008, 18:37

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?

scffie
Berichten: 56
Lid geworden op: 04 sep 2004, 12:33

Re: SQL query moeilijkheden

Bericht door scffie » 11 jan 2008, 21:25

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
//

Gesloten